<!doctype html><html lang="en">
 <head>
  <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  <title>Requirements for Latin Text Layout and Pagination</title>
  <meta content="width=device-width, initial-scale=1, shrink-to-fit=no" name="viewport">
<style data-fill-with="stylesheet">/******************************************************************************
 *                   Style sheet for the W3C specifications                   *
 *
 * Special classes handled by this style sheet include:
 *
 * Indices
 *   - .toc for the Table of Contents (<ol class="toc">)
 *     + <span class="secno"> for the section numbers
 *   - #toc for the Table of Contents (<nav id="toc">)
 *   - ul.index for Indices (<a href="#ref">term</a><span>, in §N.M</span>)
 *   - table.index for Index Tables (e.g. for properties or elements)
 *
 * Structural Markup
 *   - table.data for general data tables
 *     -> use 'scope' attribute, <colgroup>, <thead>, and <tbody> for best results !
 *     -> use <table class='complex data'> for extra-complex tables
 *     -> use <td class='long'> for paragraph-length cell content
 *     -> use <td class='pre'> when manual line breaks/indentation would help readability
 *   - dl.switch for switch statements
 *   - ol.algorithm for algorithms (helps to visualize nesting)
 *   - .figure and .caption (HTML4) and figure and figcaption (HTML5)
 *     -> .sidefigure for right-floated figures
 *   - ins/del
 *
 * Code
 *   - pre and code
 *
 * Special Sections
 *   - .note       for informative notes             (div, p, span, aside, details)
 *   - .example    for informative examples          (div, p, pre, span)
 *   - .issue      for issues                        (div, p, span)
 *   - .assertion  for assertions                    (div, p, span)
 *   - .advisement for loud normative statements     (div, p, strong)
 *   - .annoying-warning for spec obsoletion notices (div, aside, details)
 *
 * Definition Boxes
 *   - pre.def   for WebIDL definitions
 *   - table.def for tables that define other entities (e.g. CSS properties)
 *   - dl.def    for definition lists that define other entitles (e.g. HTML elements)
 *
 * Numbering
 *   - .secno for section numbers in .toc and headings (<span class='secno'>3.2</span>)
 *   - .marker for source-inserted example/figure/issue numbers (<span class='marker'>Issue 4</span>)
 *   - ::before styled for CSS-generated issue/example/figure numbers:
 *     -> Documents wishing to use this only need to add
 *        figcaption::before,
 *        .caption::before { content: "Figure "  counter(figure) " ";  }
 *        .example::before { content: "Example " counter(example) " "; }
 *        .issue::before   { content: "Issue "   counter(issue) " ";   }
 *
 * Header Stuff (ignore, just don't conflict with these classes)
 *   - .head for the header
 *   - .copyright for the copyright
 *
 * Miscellaneous
 *   - .overlarge for things that should be as wide as possible, even if
 *     that overflows the body text area. This can be used on an item or
 *     on its container, depending on the effect desired.
 *     Note that this styling basically doesn't help at all when printing,
 *     since A4 paper isn't much wider than the max-width here.
 *     It's better to design things to fit into a narrower measure if possible.
 *   - js-added ToC jump links (see fixup.js)
 *
 ******************************************************************************/

/******************************************************************************/
/*                                   Body                                     */
/******************************************************************************/

	body {
		counter-reset: example figure issue;

		/* Layout */
		max-width: 50em;               /* limit line length to 50em for readability   */
		margin: 0 auto;                /* center text within page                     */
		padding: 1.6em 1.5em 2em 50px; /* assume 16px font size for downlevel clients */
		padding: 1.6em 1.5em 2em calc(26px + 1.5em); /* leave space for status flag     */

		/* Typography */
		line-height: 1.5;
		font-family: sans-serif;
		widows: 2;
		orphans: 2;
		word-wrap: break-word;
		overflow-wrap: break-word;
		hyphens: auto;

		/* Colors */
		color: black;
		background: white top left fixed no-repeat;
		background-size: 25px auto;
	}


/******************************************************************************/
/*                         Front Matter & Navigation                          */
/******************************************************************************/

/** Header ********************************************************************/

	div.head { margin-bottom: 1em }
	div.head hr { border-style: solid; }

	div.head h1 {
		font-weight: bold;
		margin: 0 0 .1em;
		font-size: 220%;
	}

	div.head h2 { margin-bottom: 1.5em;}

/** W3C Logo ******************************************************************/

	.head .logo {
		float: right;
		margin: 0.4rem 0 0.2rem .4rem;
	}

	.head img[src*="logos/W3C"] {
		display: block;
		border: solid #1a5e9a;
		border-width: .65rem .7rem .6rem;
		border-radius: .4rem;
		background: #1a5e9a;
		color: white;
		font-weight: bold;
	}

	.head a:hover > img[src*="logos/W3C"],
	.head a:focus > img[src*="logos/W3C"] {
		opacity: .8;
	}

	.head a:active > img[src*="logos/W3C"] {
		background: #c00;
		border-color: #c00;
	}

	/* see also additional rules in Link Styling section */

/** Copyright *****************************************************************/

	p.copyright,
	p.copyright small { font-size: small }

/** Back to Top / ToC Toggle **************************************************/

	@media print {
		#toc-nav {
			display: none;
		}
	}
	@media not print {
		#toc-nav {
			position: fixed;
			z-index: 2;
			bottom: 0; left: 0;
			margin: 0;
			min-width: 1.33em;
			border-top-right-radius: 2rem;
			box-shadow: 0 0 2px;
			font-size: 1.5em;
			color: black;
		}
		#toc-nav > a {
			display: block;
			white-space: nowrap;

			height: 1.33em;
			padding: .1em 0.3em;
			margin: 0;

			background: white;
			box-shadow: 0 0 2px;
			border: none;
			border-top-right-radius: 1.33em;
			background: white;
		}
		#toc-nav > #toc-jump {
			padding-bottom: 2em;
			margin-bottom: -1.9em;
		}

		#toc-nav > a:hover,
		#toc-nav > a:focus {
			background: #f8f8f8;
		}
		#toc-nav > a:not(:hover):not(:focus) {
			color: #707070;
		}

		/* statusbar gets in the way on keyboard focus; remove once browsers fix */
		#toc-nav > a[href="#toc"]:not(:hover):focus:last-child {
			padding-bottom: 1.5rem;
		}

		#toc-nav:not(:hover) > a:not(:focus) > span + span {
			/* Ideally this uses :focus-within on #toc-nav */
			display: none;
		}
		#toc-nav > a > span + span {
			padding-right: 0.2em;
		}

		#toc-toggle-inline {
			vertical-align: 0.05em;
			font-size: 80%;
			color: gray;
			color: hsla(203,20%,40%,.7);
			border-style: none;
			background: transparent;
			position: relative;
		}
		#toc-toggle-inline:hover:not(:active),
		#toc-toggle-inline:focus:not(:active) {
			text-shadow: 1px 1px silver;
			top: -1px;
			left: -1px;
		}

		#toc-nav :active {
			color: #C00;
		}
	}

/** ToC Sidebar ***************************************************************/

	/* Floating sidebar */
	@media screen {
		body.toc-sidebar #toc {
			position: fixed;
			top: 0; bottom: 0;
			left: 0;
			width: 23.5em;
			max-width: 80%;
			max-width: calc(100% - 2em - 26px);
			overflow: auto;
			padding: 0 1em;
			padding-left: 42px;
			padding-left: calc(1em + 26px);
			background: inherit;
			background-color: #f7f8f9;
			z-index: 1;
			box-shadow: -.1em 0 .25em rgba(0,0,0,.1) inset;
		}
		body.toc-sidebar #toc h2 {
			margin-top: .8rem;
			font-variant: small-caps;
			font-variant: all-small-caps;
			text-transform: lowercase;
			font-weight: bold;
			color: gray;
			color: hsla(203,20%,40%,.7);
		}
		body.toc-sidebar #toc-jump:not(:focus) {
			width: 0;
			height: 0;
			padding: 0;
			position: absolute;
			overflow: hidden;
		}
	}
	/* Hide main scroller when only the ToC is visible anyway */
	@media screen and (max-width: 28em) {
		body.toc-sidebar {
			overflow: hidden;
		}
	}

	/* Sidebar with its own space */
	@media screen and (min-width: 78em) {
		body:not(.toc-inline) #toc {
			position: fixed;
			top: 0; bottom: 0;
			left: 0;
			width: 23.5em;
			overflow: auto;
			padding: 0 1em;
			padding-left: 42px;
			padding-left: calc(1em + 26px);
			background: inherit;
			background-color: #f7f8f9;
			z-index: 1;
			box-shadow: -.1em 0 .25em rgba(0,0,0,.1) inset;
		}
		body:not(.toc-inline) #toc h2 {
			margin-top: .8rem;
			font-variant: small-caps;
			font-variant: all-small-caps;
			text-transform: lowercase;
			font-weight: bold;
			color: gray;
			color: hsla(203,20%,40%,.7);
		}

		body:not(.toc-inline) {
			padding-left: 29em;
		}
		/* See also Overflow section at the bottom */

		body:not(.toc-inline) #toc-jump:not(:focus) {
			width: 0;
			height: 0;
			padding: 0;
			position: absolute;
			overflow: hidden;
		}
	}
	@media screen and (min-width: 90em) {
		body:not(.toc-inline) {
			margin: 0 4em;
		}
	}

/******************************************************************************/
/*                                Sectioning                                  */
/******************************************************************************/

/** Headings ******************************************************************/

	h1, h2, h3, h4, h5, h6, dt {
		page-break-after: avoid;
		page-break-inside: avoid;
		font: 100% sans-serif;   /* Reset all font styling to clear out UA styles */
		font-family: inherit;    /* Inherit the font family. */
		line-height: 1.2;        /* Keep wrapped headings compact */
		hyphens: manual;         /* Hyphenated headings look weird */
	}

	h2, h3, h4, h5, h6 {
		margin-top: 3rem;
	}

	h1, h2, h3 {
		color: #005A9C;
		background: transparent;
	}

	h1 { font-size: 170%; }
	h2 { font-size: 140%; }
	h3 { font-size: 120%; }
	h4 { font-weight: bold; }
	h5 { font-style: italic; }
	h6 { font-variant: small-caps; }
	dt { font-weight: bold; }

/** Subheadings ***************************************************************/

	h1 + h2,
	#subtitle {
		/* #subtitle is a subtitle in an H2 under the H1 */
		margin-top: 0;
	}
	h2 + h3,
	h3 + h4,
	h4 + h5,
	h5 + h6 {
		margin-top: 1.2em; /* = 1 x line-height */
	}

/** Section divider ***********************************************************/

	:not(.head) > hr {
		font-size: 1.5em;
		text-align: center;
		margin: 1em auto;
		height: auto;
		border: transparent solid 0;
		background: transparent;
	}
	:not(.head) > hr::before {
		content: "\2727\2003\2003\2727\2003\2003\2727";
	}

/******************************************************************************/
/*                            Paragraphs and Lists                            */
/******************************************************************************/

	p {
		margin: 1em 0;
	}

	dd > p:first-child,
	li > p:first-child {
		margin-top: 0;
	}

	ul, ol {
		margin-left: 0;
		padding-left: 2em;
	}

	li {
		margin: 0.25em 0 0.5em;
		padding: 0;
	}

	dl dd {
		margin: 0 0 .5em 2em;
	}

	.head dd + dd { /* compact for header */
		margin-top: -.5em;
	}

	/* Style for algorithms */
	ol.algorithm ol:not(.algorithm),
	.algorithm > ol ol:not(.algorithm) {
	 border-left: 0.5em solid #DEF;
	}

	/* Put nice boxes around each algorithm. */
	[data-algorithm]:not(.heading) {
	  padding: .5em;
	  border: thin solid #ddd; border-radius: .5em;
	  margin: .5em calc(-0.5em - 1px);
	}
	[data-algorithm]:not(.heading) > :first-child {
	  margin-top: 0;
	}
	[data-algorithm]:not(.heading) > :last-child {
	  margin-bottom: 0;
	}

	/* Style for switch/case <dl>s */
	dl.switch > dd > ol.only,
	dl.switch > dd > .only > ol {
	 margin-left: 0;
	}
	dl.switch > dd > ol.algorithm,
	dl.switch > dd > .algorithm > ol {
	 margin-left: -2em;
	}
	dl.switch {
	 padding-left: 2em;
	}
	dl.switch > dt {
	 text-indent: -1.5em;
	 margin-top: 1em;
	}
	dl.switch > dt + dt {
	 margin-top: 0;
	}
	dl.switch > dt::before {
	 content: '\21AA';
	 padding: 0 0.5em 0 0;
	 display: inline-block;
	 width: 1em;
	 text-align: right;
	 line-height: 0.5em;
	}

/** Terminology Markup ********************************************************/


/******************************************************************************/
/*                                 Inline Markup                              */
/******************************************************************************/

/** Terminology Markup ********************************************************/
	dfn   { /* Defining instance */
		font-weight: bolder;
	}
	a > i { /* Instance of term */
		font-style: normal;
	}
	dt dfn code, code.idl {
		font-size: medium;
	}
	dfn var {
		font-style: normal;
	}

/** Change Marking ************************************************************/

	del { color: red;  text-decoration: line-through; }
	ins { color: #080; text-decoration: underline;    }

/** Miscellaneous improvements to inline formatting ***************************/

	sup {
		vertical-align: super;
		font-size: 80%
	}

/******************************************************************************/
/*                                    Code                                    */
/******************************************************************************/

/** General monospace/pre rules ***********************************************/

	pre, code, samp {
		font-family: Menlo, Consolas, "DejaVu Sans Mono", Monaco, monospace;
		font-size: .9em;
		page-break-inside: avoid;
		hyphens: none;
		text-transform: none;
	}
	pre code,
	code code {
		font-size: 100%;
	}

	pre {
		margin-top: 1em;
		margin-bottom: 1em;
		overflow: auto;
	}

/** Inline Code fragments *****************************************************/

  /* Do something nice. */

/******************************************************************************/
/*                                    Links                                   */
/******************************************************************************/

/** General Hyperlinks ********************************************************/

	/* We hyperlink a lot, so make it less intrusive */
	a[href] {
		color: #034575;
		text-decoration: none;
		border-bottom: 1px solid #707070;
		/* Need a bit of extending for it to look okay */
		padding: 0 1px 0;
		margin: 0 -1px 0;
	}
	a:visited {
		border-bottom-color: #BBB;
	}

	/* Use distinguishing colors when user is interacting with the link */
	a[href]:focus,
	a[href]:hover {
		background: #f8f8f8;
		background: rgba(75%, 75%, 75%, .25);
		border-bottom-width: 3px;
		margin-bottom: -2px;
	}
	a[href]:active {
		color: #C00;
		border-color: #C00;
	}

	/* Backout above styling for W3C logo */
	.head .logo,
	.head .logo a {
		border: none;
		text-decoration: none;
		background: transparent;
	}

/******************************************************************************/
/*                                    Images                                  */
/******************************************************************************/

	img {
		border-style: none;
	}

	/* For autogen numbers, add
	   .caption::before, figcaption::before { content: "Figure " counter(figure) ". "; }
	*/

	figure, .figure, .sidefigure {
		page-break-inside: avoid;
		text-align: center;
		margin: 2.5em 0;
	}
	.figure img,    .sidefigure img,    figure img,
	.figure object, .sidefigure object, figure object {
		max-width: 100%;
		margin: auto;
	}
	.figure pre, .sidefigure pre, figure pre {
		text-align: left;
		display: table;
		margin: 1em auto;
	}
	.figure table, figure table {
		margin: auto;
	}
	@media screen and (min-width: 20em) {
		.sidefigure {
			float: right;
			width: 50%;
			margin: 0 0 0.5em 0.5em
		}
	}
	.caption, figcaption, caption {
		font-style: italic;
		font-size: 90%;
	}
	.caption::before, figcaption::before, figcaption > .marker {
		font-weight: bold;
	}
	.caption, figcaption {
		counter-increment: figure;
	}

	/* DL list is indented 2em, but figure inside it is not */
	dd > .figure, dd > figure { margin-left: -2em }

/******************************************************************************/
/*                             Colored Boxes                                  */
/******************************************************************************/

	.issue, .note, .example, .assertion, .advisement, blockquote {
		padding: .5em;
		border: .5em;
		border-left-style: solid;
		page-break-inside: avoid;
	}
	span.issue, span.note {
		padding: .1em .5em .15em;
		border-right-style: solid;
	}

	.issue,
	.note,
	.example,
	.advisement,
	.assertion,
	blockquote {
		margin: 1em auto;
	}
	.note  > p:first-child,
	.issue > p:first-child,
	blockquote > :first-child {
		margin-top: 0;
	}
	blockquote > :last-child {
		margin-bottom: 0;
	}

/** Blockquotes ***************************************************************/

	blockquote {
		border-color: silver;
	}

/** Open issue ****************************************************************/

	.issue {
		border-color: #E05252;
		background: #FBE9E9;
		counter-increment: issue;
		overflow: auto;
	}
	.issue::before, .issue > .marker {
		text-transform: uppercase;
		color: #AE1E1E;
		padding-right: 1em;
		text-transform: uppercase;
	}
	/* Add .issue::before { content: "Issue " counter(issue) " "; } for autogen numbers,
	   or use class="marker" to mark up the issue number in source. */

/** Example *******************************************************************/

	.example {
		border-color: #E0CB52;
		background: #FCFAEE;
		counter-increment: example;
		overflow: auto;
		clear: both;
	}
	.example::before, .example > .marker {
		text-transform: uppercase;
		color: #827017;
		min-width: 7.5em;
		display: block;
	}
	/* Add .example::before { content: "Example " counter(example) " "; } for autogen numbers,
	   or use class="marker" to mark up the example number in source. */

/** Non-normative Note ********************************************************/

	.note {
		border-color: #52E052;
		background: #E9FBE9;
		overflow: auto;
	}

	.note::before, .note > .marker,
	details.note > summary::before,
	details.note > summary > .marker {
		text-transform: uppercase;
		display: block;
		color: hsl(120, 70%, 30%);
	}
	/* Add .note::before { content: "Note"; } for autogen label,
	   or use class="marker" to mark up the label in source. */

	details.note > summary {
		display: block;
		color: hsl(120, 70%, 30%);
	}
	details.note[open] > summary {
		border-bottom: 1px silver solid;
	}

/** Assertion Box *************************************************************/
	/*  for assertions in algorithms */

	.assertion {
		border-color: #AAA;
		background: #EEE;
	}

/** Advisement Box ************************************************************/
	/*  for attention-grabbing normative statements */

	.advisement {
		border-color: orange;
		border-style: none solid;
		background: #FFEECC;
	}
	strong.advisement {
		display: block;
		text-align: center;
	}
	.advisement > .marker {
		color: #B35F00;
	}

/** Spec Obsoletion Notice ****************************************************/
	/* obnoxious obsoletion notice for older/abandoned specs. */

	details {
		display: block;
	}
	summary {
		font-weight: bolder;
	}

	.annoying-warning:not(details),
	details.annoying-warning:not([open]) > summary,
	details.annoying-warning[open] {
		background: #fdd;
		color: red;
		font-weight: bold;
		padding: .75em 1em;
		border: thick red;
		border-style: solid;
		border-radius: 1em;
	}
	.annoying-warning :last-child {
		margin-bottom: 0;
	}

@media not print {
	details.annoying-warning[open] {
		position: fixed;
		left: 1em;
		right: 1em;
		bottom: 1em;
		z-index: 1000;
	}
}

	details.annoying-warning:not([open]) > summary {
		text-align: center;
	}

/** Entity Definition Boxes ***************************************************/

	.def {
		padding: .5em 1em;
		background: #DEF;
		margin: 1.2em 0;
		border-left: 0.5em solid #8CCBF2;
	}

/******************************************************************************/
/*                                    Tables                                  */
/******************************************************************************/

	th, td {
		text-align: left;
		text-align: start;
	}

/** Property/Descriptor Definition Tables *************************************/

	table.def {
		/* inherits .def box styling, see above */
		width: 100%;
		border-spacing: 0;
	}

	table.def td,
	table.def th {
		padding: 0.5em;
		vertical-align: baseline;
		border-bottom: 1px solid #bbd7e9;
	}

	table.def > tbody > tr:last-child th,
	table.def > tbody > tr:last-child td {
		border-bottom: 0;
	}

	table.def th {
		font-style: italic;
		font-weight: normal;
		padding-left: 1em;
		width: 3em;
	}

	/* For when values are extra-complex and need formatting for readability */
	table td.pre {
		white-space: pre-wrap;
	}

	/* A footnote at the bottom of a def table */
	table.def           td.footnote {
		padding-top: 0.6em;
	}
	table.def           td.footnote::before {
		content: " ";
		display: block;
		height: 0.6em;
		width: 4em;
		border-top: thin solid;
	}

/** Data tables (and properly marked-up index tables) *************************/
	/*
		 <table class="data"> highlights structural relationships in a table
		 when correct markup is used (e.g. thead/tbody, th vs. td, scope attribute)

		 Use class="complex data" for particularly complicated tables --
		 (This will draw more lines: busier, but clearer.)

		 Use class="long" on table cells with paragraph-like contents
		 (This will adjust text alignment accordingly.)
		 Alternately use class="longlastcol" on tables, to have the last column assume "long".
	*/

	table {
		word-wrap: normal;
		overflow-wrap: normal;
		hyphens: manual;
	}

	table.data,
	table.index {
		margin: 1em auto;
		border-collapse: collapse;
		border: hidden;
		width: 100%;
	}
	table.data caption,
	table.index caption {
		max-width: 50em;
		margin: 0 auto 1em;
	}

	table.data td,  table.data th,
	table.index td, table.index th {
		padding: 0.5em 1em;
		border-width: 1px;
		border-color: silver;
		border-top-style: solid;
	}

	table.data thead td:empty {
		padding: 0;
		border: 0;
	}

	table.data  thead,
	table.index thead,
	table.data  tbody,
	table.index tbody {
		border-bottom: 2px solid;
	}

	table.data colgroup,
	table.index colgroup {
		border-left: 2px solid;
	}

	table.data  tbody th:first-child,
	table.index tbody th:first-child  {
		border-right: 2px solid;
		border-top: 1px solid silver;
		padding-right: 1em;
	}

	table.data th[colspan],
	table.data td[colspan] {
		text-align: center;
	}

	table.complex.data th,
	table.complex.data td {
		border: 1px solid silver;
		text-align: center;
	}

	table.data.longlastcol td:last-child,
	table.data td.long {
	 vertical-align: baseline;
	 text-align: left;
	}

	table.data img {
		vertical-align: middle;
	}


/*
Alternate table alignment rules

	table.data,
	table.index {
		text-align: center;
	}

	table.data  thead th[scope="row"],
	table.index thead th[scope="row"] {
		text-align: right;
	}

	table.data  tbody th:first-child,
	table.index tbody th:first-child  {
		text-align: right;
	}

Possible extra rowspan handling

	table.data  tbody th[rowspan]:not([rowspan='1']),
	table.index tbody th[rowspan]:not([rowspan='1']),
	table.data  tbody td[rowspan]:not([rowspan='1']),
	table.index tbody td[rowspan]:not([rowspan='1']) {
		border-left: 1px solid silver;
	}

	table.data  tbody th[rowspan]:first-child,
	table.index tbody th[rowspan]:first-child,
	table.data  tbody td[rowspan]:first-child,
	table.index tbody td[rowspan]:first-child{
		border-left: 0;
		border-right: 1px solid silver;
	}
*/

/******************************************************************************/
/*                                  Indices                                   */
/******************************************************************************/


/** Table of Contents *********************************************************/

	.toc a {
		/* More spacing; use padding to make it part of the click target. */
		padding-top: 0.1rem;
		/* Larger, more consistently-sized click target */
		display: block;
		/* Reverse color scheme */
		color: black;
		border-color: #3980B5;
		border-bottom-width: 3px !important;
		margin-bottom: 0px !important;
	}
	.toc a:visited {
		border-color: #054572;
	}
	.toc a:not(:focus):not(:hover) {
		/* Allow colors to cascade through from link styling */
		border-bottom-color: transparent;
	}

	.toc, .toc ol, .toc ul, .toc li {
		list-style: none; /* Numbers must be inlined into source */
		/* because generated content isn't search/selectable and markers can't do multilevel yet */
		margin:  0;
		padding: 0;
		line-height: 1.1rem; /* consistent spacing */
	}

	/* ToC not indented until third level, but font style & margins show hierarchy */
	.toc > li             { font-weight: bold;   }
	.toc > li li          { font-weight: normal; }
	.toc > li li li       { font-size:   95%;    }
	.toc > li li li li    { font-size:   90%;    }
	.toc > li li li li .secno { font-size: 85%; }
	.toc > li li li li li { font-size:   85%;    }
	.toc > li li li li li .secno { font-size: 100%; }

	/* @supports not (display:grid) { */
		.toc > li             { margin: 1.5rem 0;    }
		.toc > li li          { margin: 0.3rem 0;    }
		.toc > li li li       { margin-left: 2rem;   }

		/* Section numbers in a column of their own */
		.toc .secno {
			float: left;
			width: 4rem;
			white-space: nowrap;
		}

		.toc li {
			clear: both;
		}

		:not(li) > .toc              { margin-left:  5rem; }
		.toc .secno                  { margin-left: -5rem; }
		.toc > li li li .secno       { margin-left: -7rem; }
		.toc > li li li li .secno    { margin-left: -9rem; }
		.toc > li li li li li .secno { margin-left: -11rem; }

		/* Tighten up indentation in narrow ToCs */
		@media (max-width: 30em) {
			:not(li) > .toc              { margin-left:  4rem; }
			.toc .secno                  { margin-left: -4rem; }
			.toc > li li li              { margin-left:  1rem; }
			.toc > li li li .secno       { margin-left: -5rem; }
			.toc > li li li li .secno    { margin-left: -6rem; }
			.toc > li li li li li .secno { margin-left: -7rem; }
		}
	/* } */

	@supports (display:grid) and (display:contents) {
		/* Use #toc over .toc to override non-@supports rules. */
		#toc {
			display: grid;
			align-content: start;
			grid-template-columns: auto 1fr;
			grid-column-gap: 1rem;
			column-gap: 1rem;
			grid-row-gap: .6rem;
			row-gap: .6rem;
		}
		#toc h2 {
			grid-column: 1 / -1;
			margin-bottom: 0;
		}
		#toc ol,
		#toc li,
		#toc a {
			display: contents;
			/* Switch <a> to subgrid when supported */
		}
		#toc span {
			margin: 0;
		}
		#toc > .toc > li > a > span {
			/* The spans of the top-level list,
			   comprising the first items of each top-level section. */
			margin-top: 1.1rem;
		}
		#toc#toc .secno { /* Ugh, need more specificity to override base.css */
			grid-column: 1;
			width: auto;
			margin-left: 0;
		}
		#toc .content {
			grid-column: 2;
			width: auto;
			margin-right: 1rem;
		}
		#toc .content:hover {
			background: rgba(75%, 75%, 75%, .25);
			border-bottom: 3px solid #054572;
			margin-bottom: -3px;
		}
		#toc li li li .content {
			margin-left: 1rem;
		}
		#toc li li li li .content {
			margin-left: 2rem;
		}
	}


/** Index *********************************************************************/

	/* Index Lists: Layout */
	ul.index       { margin-left: 0; columns: 15em; text-indent: 1em hanging; }
	ul.index li    { margin-left: 0; list-style: none; break-inside: avoid; }
	ul.index li li { margin-left: 1em }
	ul.index dl    { margin-top: 0; }
	ul.index dt    { margin: .2em 0 .2em 20px;}
	ul.index dd    { margin: .2em 0 .2em 40px;}
	/* Index Lists: Typography */
	ul.index ul,
	ul.index dl { font-size: smaller; }
	@media not print {
		ul.index li span {
			white-space: nowrap;
			color: transparent; }
		ul.index li a:hover + span,
		ul.index li a:focus + span {
			color: #707070;
		}
	}

/** Index Tables *****************************************************/
	/* See also the data table styling section, which this effectively subclasses */

	table.index {
		font-size: small;
		border-collapse: collapse;
		border-spacing: 0;
		text-align: left;
		margin: 1em 0;
	}

	table.index td,
	table.index th {
		padding: 0.4em;
	}

	table.index tr:hover td:not([rowspan]),
	table.index tr:hover th:not([rowspan]) {
		background: #f7f8f9;
	}

	/* The link in the first column in the property table (formerly a TD) */
	table.index th:first-child a {
		font-weight: bold;
	}

/******************************************************************************/
/*                                    Print                                   */
/******************************************************************************/

	@media print {
		/* Pages have their own margins. */
		html {
			margin: 0;
		}
		/* Serif for print. */
		body {
			font-family: serif;
		}
	}
	@page {
		margin: 1.5cm 1.1cm;
	}

/******************************************************************************/
/*                                    Legacy                                  */
/******************************************************************************/

	/* This rule is inherited from past style sheets. No idea what it's for. */
	.hide { display: none }



/******************************************************************************/
/*                             Overflow Control                               */
/******************************************************************************/

	.figure .caption, .sidefigure .caption, figcaption {
		/* in case figure is overlarge, limit caption to 50em */
		max-width: 50rem;
		margin-left: auto;
		margin-right: auto;
	}
	.overlarge {
		/* Magic to create good table positioning:
		   "content column" is 50ems wide at max; less on smaller screens.
		   Extra space (after ToC + content) is empty on the right.

		   1. When table < content column, centers table in column.
		   2. When content < table < available, left-aligns.
		   3. When table > available, fills available + scroll bar.
		*/ 
		display: grid;
		grid-template-columns: minmax(0, 50em);
	}
	.overlarge > table {
		/* limit preferred width of table */
		max-width: 50em;
		margin-left: auto;
		margin-right: auto;
	}

	@media (min-width: 55em) {
		.overlarge {
			margin-right: calc(13px + 26.5rem - 50vw);
			max-width: none;
		}
	}
	@media screen and (min-width: 78em) {
		body:not(.toc-inline) .overlarge {
			/* 30.5em body padding 50em content area */
			margin-right: calc(40em - 50vw) !important;
		}
	}
	@media screen and (min-width: 90em) {
		body:not(.toc-inline) .overlarge {
			/* 4em html margin 30.5em body padding 50em content area */
			margin-right: calc(84.5em - 100vw) !important;
		}
	}

	@media not print {
		.overlarge {
			overflow-x: auto;
			/* See Lea Verou's explanation background-attachment:
			 * http://lea.verou.me/2012/04/background-attachment-local/
			 *
			background: top left  / 4em 100% linear-gradient(to right,  #ffffff, rgba(255, 255, 255, 0)) local,
			            top right / 4em 100% linear-gradient(to left, #ffffff, rgba(255, 255, 255, 0)) local,
			            top left  / 1em 100% linear-gradient(to right,  #c3c3c5, rgba(195, 195, 197, 0)) scroll,
			            top right / 1em 100% linear-gradient(to left, #c3c3c5, rgba(195, 195, 197, 0)) scroll,
			            white;
			background-repeat: no-repeat;
			*/
		}
	}
</style>
  <link href="http://www.w3.org/TR/dpub-latinreq/" rel="canonical">
<style type="text/css">

blockquote p { font-style: italic; }
p.source { text-align: right; font-style: normal }
</style>
<style>/* style-md-lists */

/* This is a weird hack for me not yet following the commonmark spec
   regarding paragraph and lists. */
[data-md] > :first-child {
    margin-top: 0;
}
[data-md] > :last-child {
    margin-bottom: 0;
}</style>
<style>/* style-counters */

body {
    counter-reset: example figure issue;
}
.issue {
    counter-increment: issue;
}
.issue:not(.no-marker)::before {
    content: "Issue " counter(issue);
}

.example {
    counter-increment: example;
}
.example:not(.no-marker)::before {
    content: "Example " counter(example);
}
.invalid.example:not(.no-marker)::before,
.illegal.example:not(.no-marker)::before {
    content: "Invalid Example" counter(example);
}

figcaption {
    counter-increment: figure;
}
figcaption:not(.no-marker)::before {
    content: "Figure " counter(figure) " ";
}</style>
<style>/* style-selflinks */

.heading, .issue, .note, .example, li, dt {
    position: relative;
}
a.self-link {
    position: absolute;
    top: 0;
    left: calc(-1 * (3.5rem - 26px));
    width: calc(3.5rem - 26px);
    height: 2em;
    text-align: center;
    border: none;
    transition: opacity .2s;
    opacity: .5;
}
a.self-link:hover {
    opacity: 1;
}
.heading > a.self-link {
    font-size: 83%;
}
li > a.self-link {
    left: calc(-1 * (3.5rem - 26px) - 2em);
}
dfn > a.self-link {
    top: auto;
    left: auto;
    opacity: 0;
    width: 1.5em;
    height: 1.5em;
    background: gray;
    color: white;
    font-style: normal;
    transition: opacity .2s, background-color .2s, color .2s;
}
dfn:hover > a.self-link {
    opacity: 1;
}
dfn > a.self-link:hover {
    color: black;
}

a.self-link::before            { content: "¶"; }
.heading > a.self-link::before { content: "§"; }
dfn > a.self-link::before      { content: "#"; }</style>
<style>/* style-autolinks */

.css.css, .property.property, .descriptor.descriptor {
    color: #005a9c;
    font-size: inherit;
    font-family: inherit;
}
.css::before, .property::before, .descriptor::before {
    content: "‘";
}
.css::after, .property::after, .descriptor::after {
    content: "’";
}
.property, .descriptor {
    /* Don't wrap property and descriptor names */
    white-space: nowrap;
}
.type { /* CSS value <type> */
    font-style: italic;
}
pre .property::before, pre .property::after {
    content: "";
}
[data-link-type="property"]::before,
[data-link-type="propdesc"]::before,
[data-link-type="descriptor"]::before,
[data-link-type="value"]::before,
[data-link-type="function"]::before,
[data-link-type="at-rule"]::before,
[data-link-type="selector"]::before,
[data-link-type="maybe"]::before {
    content: "‘";
}
[data-link-type="property"]::after,
[data-link-type="propdesc"]::after,
[data-link-type="descriptor"]::after,
[data-link-type="value"]::after,
[data-link-type="function"]::after,
[data-link-type="at-rule"]::after,
[data-link-type="selector"]::after,
[data-link-type="maybe"]::after {
    content: "’";
}

[data-link-type].production::before,
[data-link-type].production::after,
.prod [data-link-type]::before,
.prod [data-link-type]::after {
    content: "";
}

[data-link-type=element],
[data-link-type=element-attr] {
    font-family: Menlo, Consolas, "DejaVu Sans Mono", monospace;
    font-size: .9em;
}
[data-link-type=element]::before { content: "<" }
[data-link-type=element]::after  { content: ">" }

[data-link-type=biblio] {
    white-space: pre;
}</style>
 <body class="h-entry">
  <div class="head">
   <p data-fill-with="logo"></p>
   <h1>Requirements for Latin Text Layout and Pagination</h1>
   <h2 class="no-num no-toc no-ref heading settled" id="subtitle"><span class="content">, <time class="dt-updated" datetime="1970-01-01">1 January 1970</time></span></h2>
   <div data-fill-with="spec-metadata">
    <dl>
     <dt>This version:
     <dd><a class="u-url" href="http://w3c.github.io/dpub-pagination/">http://w3c.github.io/dpub-pagination/</a>
     <dt>Latest published version:
     <dd><a href="http://www.w3.org/TR/dpub-latinreq/">http://www.w3.org/TR/dpub-latinreq/</a>
     <dt>Previous Versions:
     <dd><a href="http://www.w3.org/TR/2014/WD-dpub-latinreq-20140313/" rel="prev">http://www.w3.org/TR/2014/WD-dpub-latinreq-20140313/</a>
     <dt class="editor">Editor:
     <dd class="editor p-author h-card vcard"><a class="p-name fn u-email email" href="mailto:dave.cramer@hbgusa.com">Dave Cramer</a> (<span class="p-org org">Hachette Livre</span>)
    </dl>
   </div>
   <div data-fill-with="warning"></div>
   <p class="copyright" data-fill-with="copyright"><a href="http://creativecommons.org/publicdomain/zero/1.0/" rel="license"><img alt="CC0" src="https://licensebuttons.net/p/zero/1.0/80x15.png"></a> To the extent possible under law, the editors have waived all copyright
and related or neighboring rights to this work.
In addition, as of 1 January 1970,
the editors have made this specification available under the <a href="http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0" rel="license">Open Web Foundation Agreement Version 1.0</a>,
which is available at http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0.
Parts of this work may be from another specification document.  If so, those parts are instead covered by the license of that specification document. </p>
   <hr title="Separator for header">
  </div>
  <div class="p-summary" data-fill-with="abstract">
   <h2 class="no-num no-toc no-ref heading settled" id="abstract"><span class="content">Abstract</span></h2>
   <p>This document describes requirements for pagination and layout of books that use the Latin script, based on the tradition of print book design and composition. It is hoped that these principles can inform the pagination of digital content as well, and serve as a reference for the CSS Working Group and other interested parties. This work was inspired by <a data-link-type="biblio" href="#biblio-jlreq">[JLREQ]</a>.</p>
  </div>
  <div data-fill-with="at-risk"></div>
  <nav data-fill-with="table-of-contents" id="toc">
   <h2 class="no-num no-toc no-ref" id="contents">Table of Contents</h2>
   <ol class="toc" role="directory">
    <li><a href="#intro"><span class="secno">1</span> <span class="content"> Introduction </span></a>
    <li>
     <a href="#fundamentals"><span class="secno">2</span> <span class="content"> Fundamentals </span></a>
     <ol class="toc">
      <li><a href="#tradeoffs"><span class="secno">2.1</span> <span class="content"> Tradeoffs </span></a>
      <li><a href="#untangling-the-vertical-and-the-horizontal"><span class="secno">2.2</span> <span class="content"> Untangling the Vertical and the Horizontal </span></a>
     </ol>
    <li>
     <a href="#the-spatial-geometry-of-pages-spreads-and-bleeds"><span class="secno">3</span> <span class="content"> The Spatial Geometry of Pages: Spreads and Bleeds </span></a>
     <ol class="toc">
      <li><a href="#crossing-the-gutter"><span class="secno">3.1</span> <span class="content"> Crossing the Gutter </span></a>
      <li><a href="#page-size-orientation-and-arrangement"><span class="secno">3.2</span> <span class="content"> Page size, orientation, and arrangement </span></a>
      <li><a href="#bleeds"><span class="secno">3.3</span> <span class="content"> Bleeds </span></a>
     </ol>
    <li>
     <a href="#hyphenation-and-justification"><span class="secno">4</span> <span class="content"> Hyphenation and Justification </span></a>
     <ol class="toc">
      <li>
       <a href="#hyphenation"><span class="secno">4.1</span> <span class="content"> Hyphenation </span></a>
       <ol class="toc">
        <li><a href="#parameters-for-hyphenation"><span class="secno">4.1.1</span> <span class="content"> Parameters for Hyphenation </span></a>
        <li>
         <a href="#choosing-hyphenation-points"><span class="secno">4.1.2</span> <span class="content"> Choosing hyphenation points </span></a>
         <ol class="toc">
          <li><a href="#language"><span class="secno">4.1.2.1</span> <span class="content"> Language </span></a>
          <li><a href="#culture"><span class="secno">4.1.2.2</span> <span class="content"> Culture </span></a>
          <li><a href="#subject-matter"><span class="secno">4.1.2.3</span> <span class="content"> Subject Matter </span></a>
          <li><a href="#exceptions"><span class="secno">4.1.2.4</span> <span class="content"> Exceptions </span></a>
         </ol>
       </ol>
      <li>
       <a href="#justification"><span class="secno">4.2</span> <span class="content"> Justification </span></a>
       <ol class="toc">
        <li>
         <a href="#algorithms"><span class="secno">4.2.1</span> <span class="content"> Algorithms </span></a>
         <ol class="toc">
          <li><a href="#greedy"><span class="secno">4.2.1.1</span> <span class="content"> Greedy </span></a>
          <li><a href="#knuth-plass-tex"><span class="secno">4.2.1.2</span> <span class="content">Knuth-Plass (TeX) </span></a>
          <li><a href="#adobe-indesign"><span class="secno">4.2.1.3</span> <span class="content">Adobe (InDesign) </span></a>
         </ol>
       </ol>
     </ol>
    <li>
     <a href="#paginating-single-column-text"><span class="secno">5</span> <span class="content"> Paginating Single-Column Text </span></a>
     <ol class="toc">
      <li><a href="#widows"><span class="secno">5.1</span> <span class="content"> Widows </span></a>
      <li><a href="#orphans"><span class="secno">5.2</span> <span class="content"> Orphans </span></a>
      <li><a href="#constraints-on-page-depth"><span class="secno">5.3</span> <span class="content"> Constraints on page depth </span></a>
      <li><a href="#facing-pages"><span class="secno">5.4</span> <span class="content"> Facing Pages </span></a>
      <li><a href="#recto-and-verso-hyphens"><span class="secno">5.5</span> <span class="content"> Recto and Verso Hyphens </span></a>
      <li><a href="#space-breaks-and-ornaments"><span class="secno">5.6</span> <span class="content"> Space Breaks and Ornaments </span></a>
     </ol>
    <li><a href="#paragraphs-and-indentation"><span class="secno">6</span> <span class="content"> Paragraphs and indentation </span></a>
    <li>
     <a href="#fonts"><span class="secno">7</span> <span class="content"> Fonts </span></a>
     <ol class="toc">
      <li><a href="#ligatures"><span class="secno">7.1</span> <span class="content"> Ligatures </span></a>
      <li>
       <a href="#numbers"><span class="secno">7.2</span> <span class="content"> Numbers and math </span></a>
       <ol class="toc">
        <li><a href="#lining-figures"><span class="secno">7.2.1</span> <span class="content"> Lining, oldstyle, and tabular figures </span></a>
       </ol>
      <li>
       <a href="#alternate-forms"><span class="secno">7.3</span> <span class="content"> Alternate forms </span></a>
       <ol class="toc">
        <li><a href="#caps"><span class="secno">7.3.1</span> <span class="content"> Caps </span></a>
        <li><a href="#swashes-and-stylistic-alternates"><span class="secno">7.3.2</span> <span class="content"> Swashes and Stylistic Alternates </span></a>
       </ol>
     </ol>
    <li>
     <a href="#initial-capitals"><span class="secno">8</span> <span class="content"> Initial Capitals </span></a>
     <ol class="toc">
      <li><a href="#drop-caps"><span class="secno">8.1</span> <span class="content"> Drop caps </span></a>
      <li><a href="#raised-caps-and-sunken-caps"><span class="secno">8.2</span> <span class="content"> Raised caps and sunken caps </span></a>
     </ol>
    <li>
     <a href="#running-headers-and-footers"><span class="secno">9</span> <span class="content"> Running headers and footers </span></a>
     <ol class="toc">
      <li><a href="#content"><span class="secno">9.1</span> <span class="content"> Content </span></a>
      <li><a href="#which-content"><span class="secno">9.2</span> <span class="content"> Which content? </span></a>
      <li><a href="#placement"><span class="secno">9.3</span> <span class="content"> Placement </span></a>
     </ol>
    <li>
     <a href="#heads"><span class="secno">10</span> <span class="content"> Heads </span></a>
     <ol class="toc">
      <li><a href="#general-considerations"><span class="secno">10.1</span> <span class="content"> General Considerations </span></a>
      <li><a href="#heads-at-the-top-of-a-page"><span class="secno">10.2</span> <span class="content"> Heads at the top of a page </span></a>
      <li><a href="#heads-at-the-bottom-of-a-page"><span class="secno">10.3</span> <span class="content"> Heads at the bottom of a page </span></a>
      <li><a href="#bridge-heads-side-heads-and-run-in-heads"><span class="secno">10.4</span> <span class="content"> Bridge heads, side heads, and run-in heads </span></a>
     </ol>
    <li>
     <a href="#images"><span class="secno">11</span> <span class="content"> Images </span></a>
     <ol class="toc">
      <li><a href="#tk"><span class="secno">11.1</span> <span class="content"> TK </span></a>
      <li><a href="#inline-images"><span class="secno">11.2</span> <span class="content"> Inline images </span></a>
      <li><a href="#image-bleeds"><span class="secno">11.3</span> <span class="content">Bleeds</span></a>
     </ol>
    <li>
     <a href="#tables"><span class="secno">12</span> <span class="content"> Tables </span></a>
     <ol class="toc">
      <li>
       <a href="#alignment"><span class="secno">12.1</span> <span class="content"> Alignment </span></a>
       <ol class="toc">
        <li><a href="#align-on-character"><span class="secno">12.1.1</span> <span class="content"> Align on character </span></a>
        <li><a href="#flush-left-center-alignment"><span class="secno">12.1.2</span> <span class="content"> Flush left center alignment </span></a>
       </ol>
      <li><a href="#table-widths"><span class="secno">12.2</span> <span class="content"> Table widths </span></a>
     </ol>
    <li>
     <a href="#lists"><span class="secno">13</span> <span class="content"> Lists, Indexes, and Tables of Contents </span></a>
     <ol class="toc">
      <li>
       <a href="#indexes"><span class="secno">13.1</span> <span class="content"> Indexes </span></a>
       <ol class="toc">
        <li><a href="#collapsing-page-ranges"><span class="secno">13.1.1</span> <span class="content"> Collapsing Page Ranges </span></a>
       </ol>
     </ol>
    <li>
     <a href="#footnotes"><span class="secno">14</span> <span class="content"> Footnotes </span></a>
     <ol class="toc">
      <li><a href="#inline-footnotes-and-multiple-footnote-regions"><span class="secno">14.1</span> <span class="content"> Inline footnotes and multiple footnote regions </span></a>
      <li><a href="#at-the-foot-of-what"><span class="secno">14.2</span> <span class="content"> At the foot of what? </span></a>
      <li><a href="#breaking-footnotes-across-pages"><span class="secno">14.3</span> <span class="content"> Breaking footnotes across pages </span></a>
      <li>
       <a href="#numbering"><span class="secno">14.4</span> <span class="content"> Numbering </span></a>
       <ol class="toc">
        <li><a href="#numbering-schemes"><span class="secno">14.4.1</span> <span class="content"> Numbering schemes </span></a>
        <li><a href="#what-are-we-counting"><span class="secno">14.4.2</span> <span class="content"> What are we counting? </span></a>
        <li><a href="#resetting-numbers"><span class="secno">14.4.3</span> <span class="content"> Resetting numbers </span></a>
       </ol>
     </ol>
    <li><a href="#cross-references"><span class="secno">15</span> <span class="content"> Cross-references </span></a>
    <li><a href="#sidebars"><span class="secno">16</span> <span class="content"> Sidebars </span></a>
    <li><a href="#marginalia"><span class="secno">17</span> <span class="content"> Marginalia </span></a>
    <li>
     <a href="#equations"><span class="secno">18</span> <span class="content"> Equations </span></a>
     <ol class="toc">
      <li><a href="#breaking-equations"><span class="secno">18.1</span> <span class="content"> Breaking equations </span></a>
      <li><a href="#numbering-equations"><span class="secno">18.2</span> <span class="content">Numbering equations </span></a>
      <li><a href="#aligning-equations"><span class="secno">18.3</span> <span class="content"> Aligning equations </span></a>
      <li><a href="#annotating-equations"><span class="secno">18.4</span> <span class="content"> Annotating equations</span></a>
     </ol>
    <li><a href="#columns"><span class="secno">19</span> <span class="content"> Columns </span></a>
    <li>
     <a href="#punctuation"><span class="secno">20</span> <span class="content"> Punctuation </span></a>
     <ol class="toc">
      <li><a href="#language-specific-spacing-rules"><span class="secno">20.1</span> <span class="content"> Language-specific spacing rules </span></a>
      <li><a href="#em-dashes-and-en-dashes"><span class="secno">20.2</span> <span class="content"> Em-dashes and en-dashes </span></a>
      <li><a href="#number-formatting"><span class="secno">20.3</span> <span class="content"> Number formatting </span></a>
     </ol>
    <li>
     <a href="#special-considerations-for-genres"><span class="secno">21</span> <span class="content"> Special Considerations for Genres </span></a>
     <ol class="toc">
      <li><a href="#education"><span class="secno">21.1</span> <span class="content"> Education </span></a>
      <li><a href="#trade"><span class="secno">21.2</span> <span class="content"> Trade </span></a>
      <li><a href="#stem"><span class="secno">21.3</span> <span class="content"> STEM </span></a>
      <li><a href="#reference"><span class="secno">21.4</span> <span class="content"> Reference </span></a>
     </ol>
    <li><a href="#digital-issues"><span class="secno">22</span> <span class="content"> Digital Issues </span></a>
    <li>
     <a href="#large-scale-issues-in-pagination"><span class="secno">23</span> <span class="content"> Large-Scale Issues in Pagination </span></a>
     <ol class="toc">
      <li><a href="#book-optimization"><span class="secno">23.1</span> <span class="content"> Book optimization </span></a>
      <li><a href="#chapter-optimization"><span class="secno">23.2</span> <span class="content"> Chapter optimization </span></a>
     </ol>
    <li><a href="#baseline-grids"><span class="secno"></span> <span class="content">Appendix A: Baseline Grids</span></a>
    <li><a href="#of-leading-and-sinkage-the-language-of-print"><span class="secno"></span> <span class="content">Appendix B: Of Leading and Sinkage: The Language of Print</span></a>
    <li><a href="#the-classical-rules-of-hyphenation-and-pagination"><span class="secno"></span> <span class="content"> The Classical Rules of Hyphenation and Pagination </span></a>
    <li><a href="#further-reading"><span class="secno"></span> <span class="content"> Further Reading </span></a>
    <li><a href="#acknowledgments"><span class="secno"></span> <span class="content">Acknowledgments</span></a>
    <li><a href="#conformance"><span class="secno"></span> <span class="content"> Conformance</span></a>
    <li>
     <a href="#index"><span class="secno"></span> <span class="content">Index</span></a>
     <ol class="toc">
      <li><a href="#index-defined-here"><span class="secno"></span> <span class="content">Terms defined by this specification</span></a>
     </ol>
    <li>
     <a href="#references"><span class="secno"></span> <span class="content">References</span></a>
     <ol class="toc">
      <li><a href="#normative"><span class="secno"></span> <span class="content">Normative References</span></a>
      <li><a href="#informative"><span class="secno"></span> <span class="content">Informative References</span></a>
     </ol>
    <li><a href="#issues-index"><span class="secno"></span> <span class="content">Issues Index</span></a>
   </ol>
  </nav>
  <main>
   <h2 class="no-num no-toc heading settled" id="sotd"><span class="content"> Status of This Document </span></h2>
   <p><em>This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current <abbr title="World Wide Web Consortium">W3C</abbr> publications and the latest revision of this technical report can be found in the <a href="http://www.w3.org/TR/"><abbr title="World Wide Web Consortium">W3C</abbr> technical reports index</a> at http://www.w3.org/TR/.</em></p>
   <p><strong>This is a work in progress. No section should be considered final, and the absence of any content does not imply that such content is out of scope, or may not appear in the future. If you feel something should be covered here, tell us!</strong> The initial version of this document will focus on books, and at this time will not include requirements specific to magazines or newspapers. The scope will depend heavily on the willingness of people to contribute to this document. Please contact the Digital Publishing Interest Group if you would like to help. Once the document is stable, the group will publish it as an Interest Group Note.</p>
   <p>This document was published by the <a href="http://www.w3.org/dpub/IG/">Digital Publishing Interest Group</a> as an Editor’s Draft. If you wish to make comments regarding this document, please send them to <a href="mailto:public-digipub@w3.org">public-digipub@w3.org</a> (<a href="mailto:public-digipub-request@w3.org?subject=subscribe">subscribe</a>, <a href="http://lists.w3.org/Archives/Public/public-digipub/">archives</a>). All comments are welcome.</p>
   <p>Publication as an Editor’s Draft does not imply endorsement by the <abbr title="World Wide Web Consortium">W3C</abbr> Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.</p>
   <p>This document was produced by a group operating under the <a class="css" data-link-type="property" href="http://www.w3.org/Consortium/Patent-Policy-20040205/" id="sotd_patent">5 February 2004 <abbr title="World Wide Web Consortium">W3C</abbr> Patent Policy</a>. <abbr title="World Wide Web Consortium">W3C</abbr> maintains a <a href rel="disclosure">public list of any patent disclosures</a> made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential Claim(s)</a> must disclose the information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of the <abbr title="World Wide Web Consortium">W3C</abbr> Patent Policy</a>.</p>
   <p>This document is governed by the <a href="http://www.w3.org/2014/Process-20140801/" id="w3c_process_revision">1 August 2014 <abbr title="World Wide Web Consortium">W3C</abbr> Process Document</a>.</p>
   <h2 class="heading settled" data-level="1" id="intro"><span class="secno">1. </span><span class="content"> Introduction </span><a class="self-link" href="#intro"></a></h2>
    Not all stories worth telling can fit in a tweet, on a computer screen, or on a single piece of paper. Ever since the codex replaced the scroll, humans have divided our stories into pages. Pagination is the art and the craft of turning that scroll of content into discrete pieces, whether destined for book pages or screens. Pagination requires us to think about the document at all levels, from the total number of pages to the tiny spaces between letters. Along with graphic design and typography, it determines the look of the page. 
   <blockquote>
    <p>Typography is the craft of endowing human language with a durable visual form, and thus with an independent existence. </p>
    <p class="source"> —Robert Bringhurst, <i>The Elements of Typographic Style</i> </p>
   </blockquote>
   <p>Good pagination, like good typography, aims to be invisible. As the reader turns the page, the stream of words and images in her mind should not be interrupted. Two thousand years of experience have taught us how best to do this. The goal of this document is to describe those rules, as clearly as possible, so they can be implemented in the Open Web Platform. We hope for a day where the pagination of digital books will be as beautiful and transparent as the best printed books.</p>
   <p class="note" role="note"><span>Note:</span> Our goal is for this document to describe layout and pagination for all languages that use the Latin script.</p>
   <h2 class="heading settled" data-level="2" id="fundamentals"><span class="secno">2. </span><span class="content"> Fundamentals </span><a class="self-link" href="#fundamentals"></a></h2>
   <blockquote>
    <p> Makeup is a highly skilled procedure. If the text is merely divided mechanically into portions of equal length, without regard to where the divisions fall, some of the pages that result are bound to be unacceptable logically or aesthetically: they will incorporate bad breaks. </p>
    <p class="source"> —<i>Chicago Manual of Style, 14th Edition</i>, 19.40. </p>
   </blockquote>
   <blockquote>
    <p> What therefore God hath joined together, let not man put asunder. </p>
    <p class="source"> —<i>The Bible</i>, Matthew 19:6 </p>
   </blockquote>
   <p>Every rule of pagination boils down to a single principle: break pages with as little disruption to the reading experience as possible. A widow leaves the last line of a paragraph isolated from the rest of the thought. A recto hyphen means a word is interrupted by a page turn. A heading at the bottom of a page removes the title from the section, and the section from the title.</p>
   <h3 class="heading settled" data-level="2.1" id="tradeoffs"><span class="secno">2.1. </span><span class="content"> Tradeoffs </span><a class="self-link" href="#tradeoffs"></a></h3>
   <p>Pagination involves tradeoffs. Fixing a widow may result in a misaligned spread. Fixing that may result in a loose line or paragraph. What is acceptable in one book, or for one publisher, may be unacceptable to another. What is acceptable in one country, or language, may be unacceptable elsewhere.</p>
   <h3 class="heading settled" data-level="2.2" id="untangling-the-vertical-and-the-horizontal"><span class="secno">2.2. </span><span class="content"> Untangling the Vertical and the Horizontal </span><a class="self-link" href="#untangling-the-vertical-and-the-horizontal"></a></h3>
   <p>Page breaks are often line breaks. The tiniest change in kerning can make a paragraph longer or shorter, and thus create a widow or an orphan. The work of pagination, as done by typesetters, human or machine, inevitably involves the consideration of the lines of text. And so we will not try too hard to avoid talking about line breaks, when they potentially influence pagination.</p>
   <h2 class="heading settled" data-level="3" id="the-spatial-geometry-of-pages-spreads-and-bleeds"><span class="secno">3. </span><span class="content"> The Spatial Geometry of Pages: Spreads and Bleeds </span><a class="self-link" href="#the-spatial-geometry-of-pages-spreads-and-bleeds"></a></h2>
   <p>Open a printed book and what you see isn’t a single page, but two pages side by side—a spread.</p>
   <figure id="fig-spread1">
     <img alt="diagram of facing text pages" src="images/Spread.001.png" width="480"> 
    <figcaption>Text spread</figcaption>
   </figure>
   <p>Books set in Latin scripts typically share some common features.</p>
   <ul>
    <li> Books are bound on the left-hand side. 
    <li> Text is written left-to-right and top-to-bottom. 
    <li> Recto and verso pages may not be symmetric. 
   </ul>
   <h3 class="heading settled" data-level="3.1" id="crossing-the-gutter"><span class="secno">3.1. </span><span class="content"> Crossing the Gutter </span><a class="self-link" href="#crossing-the-gutter"></a></h3>
   <p>Large images, tables, or sidebars may extend across both pages of a spread.</p>
   <figure id="fig-spread2">
     <img alt="image crossing gutter" src="images/Spread.002.png" width="480"> 
    <figcaption>Image extends across both pages in spread</figcaption>
   </figure>
   <h3 class="heading settled" data-level="3.2" id="page-size-orientation-and-arrangement"><span class="secno">3.2. </span><span class="content"> Page size, orientation, and arrangement </span><a class="self-link" href="#page-size-orientation-and-arrangement"></a></h3>
   <p>The size, orientation, and arrangement of pages might vary even in a single book:</p>
   <ul>
    <li> <dfn data-dfn-type="dfn" data-noexport id="turned-pages">Turned pages<a class="self-link" href="#turned-pages"></a></dfn> TK 
    <li> <dfn data-dfn-type="dfn" data-noexport id="foldouts">Foldouts<a class="self-link" href="#foldouts"></a></dfn> are pages larger than the trim size of the book, folded in order to not extend beyond the other pages. 
   </ul>
   <h3 class="heading settled" data-level="3.3" id="bleeds"><span class="secno">3.3. </span><span class="content"> Bleeds </span><a class="self-link" href="#bleeds"></a></h3>
   <p>Books are printed on large sheets of paper, which are then folded and cut. Since the cutting is not infinitely precise, any object that should extend to the very edge of the page in fact needs to extend a bit outside the page boundary. A <dfn data-dfn-type="dfn" data-noexport id="bleed">bleed<a class="self-link" href="#bleed"></a></dfn> is the part of an object that extends outside the page, generally by a small amount such as 9 points.</p>
   <figure id="fig-spread3">
     <img alt="bleed" src="images/Spread.003.png" width="480"> 
    <figcaption>Image bleeds to top and outside</figcaption>
   </figure>
   <p class="note" role="note"><span>Note:</span> Imposition and related topics are out-of-scope for this document.</p>
   <h2 class="heading settled" data-level="4" id="hyphenation-and-justification"><span class="secno">4. </span><span class="content"> Hyphenation and Justification </span><a class="self-link" href="#hyphenation-and-justification"></a></h2>
   <p>Good hyphenation and justification is critically important to the appearance and readability of text. Print typesetting systems can often achieve very good results, but most online reading systems do this very poorly.</p>
   <h3 class="heading settled" data-level="4.1" id="hyphenation"><span class="secno">4.1. </span><span class="content"> Hyphenation </span><a class="self-link" href="#hyphenation"></a></h3>
   <p>Text is often easier to read when words are allowed to break at the end of lines, thus avoiding massive variations in word-spacing or margins. But determining acceptable places to break words is a difficult problem:</p>
   <p></p>
   <div class="example" id="example-4f20727c">
    <a class="self-link" href="#example-4f20727c"></a> 
    <p>All of the following are the results of automated hyphenation algorithms:</p>
<pre>pre-ached
wee-knights
read-just
leg-ends
ex-acting
co-inage
</pre>
   </div>
   <p>Words hyphenate differently based on pronunciation or meaning:</p>
   <div class="example" id="example-5dbbe8d7">
    <a class="self-link" href="#example-5dbbe8d7"></a> 
<pre>photo-graph
pho-togra-pher

re-cord (verb)
rec-ord (noun)

pres-ent (verb)
pre-sent (noun)

cre-ator
crea-ture
</pre>
   </div>
   <h4 class="heading settled" data-level="4.1.1" id="parameters-for-hyphenation"><span class="secno">4.1.1. </span><span class="content"> Parameters for Hyphenation </span><a class="self-link" href="#parameters-for-hyphenation"></a></h4>
   <p>The following choices need to be made when considering hyphenation of text.</p>
   <ol>
    <li> Should this text be hyphenated at all? Hyphenation is generally suppressed in headings. <span class="note"><a data-link-type="biblio" href="#biblio-css3text">[CSS3TEXT]</a> includes a <span class="css">hyphens</span> property, to enable or disable hyphenation.</span> 
    <li> What’s the shortest word that can be hyphenated? Five or six is typical. 
    <li> What’s the minimum number of characters allowed before a hyphen? Two is typical, and is sometimes stated as “two-up.” <span class="issue" id="issue-454b657a"><a class="self-link" href="#issue-454b657a"></a>PrinceXML has the <code>prince-hyphenate-before</code> property, but this is not in any current CSS draft.</span> 
    <li> What’s the minimum number of characters allowed after a hyphen? Three is typical, and can be stated as “three-down.” <span class="issue" id="issue-aa94c785"><a class="self-link" href="#issue-aa94c785"></a>PrinceXML has the <code>prince-hyphenate-after</code> property, but this is not in any current CSS draft.</span> 
    <li> How many consecutive lines can end with a hyphen (known as a “ladder”)? Two or three is typical. <span class="issue" id="issue-03274385"><a class="self-link" href="#issue-03274385"></a>PrinceXML has the <code>prince-hyphenate-lines</code> property, but this is not in any current CSS draft.</span> 
    <li> Should capitalized words be hyphenated? 
    <li> Can the last word of a paragraph be hyphenated? 
    <li> Can the last word in a column, page, or spread be hyphenated? 
   </ol>
   <h4 class="heading settled" data-level="4.1.2" id="choosing-hyphenation-points"><span class="secno">4.1.2. </span><span class="content"> Choosing hyphenation points </span><a class="self-link" href="#choosing-hyphenation-points"></a></h4>
   <p>A key question is, “who decides what is acceptable?” The answer depends on the language, the culture, the subject matter, and the material being typeset.</p>
   <h5 class="heading settled" data-level="4.1.2.1" id="language"><span class="secno">4.1.2.1. </span><span class="content"> Language </span><a class="self-link" href="#language"></a></h5>
   <p>Each language has its own conventions about hyphenation. U.S. English hyphenates differently than U.K. English. In some European languages, words may be spelled differently when hyphenated.</p>
   <p></p>
   <div class="example" id="example-b312cc86">
    <a class="self-link" href="#example-b312cc86"></a> 
<pre>TK
</pre>
   </div>
   <p>Of course, the same text may include words from many different languages.</p>
   <h5 class="heading settled" data-level="4.1.2.2" id="culture"><span class="secno">4.1.2.2. </span><span class="content"> Culture </span><a class="self-link" href="#culture"></a></h5>
   <p>Even within the same language, authorities differ on the proper hyphenation of words.</p>
   <div class="example" id="example-80266eaa">
    <a class="self-link" href="#example-80266eaa"></a> 
<pre>in-de-pen-dent (American Heritage Dictionary)
in-de-pend-ent (Webster’s)
</pre>
   </div>
   <p>Copyeditors will often specify a canonical reference for hyphenation, which is usually a particular edition of a particular dictionary.</p>
   <h5 class="heading settled" data-level="4.1.2.3" id="subject-matter"><span class="secno">4.1.2.3. </span><span class="content"> Subject Matter </span><a class="self-link" href="#subject-matter"></a></h5>
   <p>Specialized subject matter may require additional hyphenation dictionaries. This is common in medicine, law, and science.</p>
   <h5 class="heading settled" data-level="4.1.2.4" id="exceptions"><span class="secno">4.1.2.4. </span><span class="content"> Exceptions </span><a class="self-link" href="#exceptions"></a></h5>
   <p>Authors should be able to provide a list of exceptions, which add to or override what the system would normally do. The format for doing so should be easily understood.</p>
   <div class="example" id="example-40662a65">
    <a class="self-link" href="#example-40662a65"></a> 
    <p>TeX uses the following format. Possible hyphenation positions are indicated with (surprise!) hyphens. Hyphenation should be prevented where hyphens are absent.</p>
<pre>\hyphenation { 
sur-pris-ingly 
tan-ta-liz-ing-ly 
these
}
</pre>
   </div>
   <p class="issue" id="issue-3dc3c2f3"><a class="self-link" href="#issue-3dc3c2f3"></a> PrinceXML uses a prefixed property <code>prince-hyphenate-patterns: url('en_US.dic');</code> to load a hyphenation dictionary. No current CSS specification includes support for this idea.</p>
   <h3 class="heading settled" data-level="4.2" id="justification"><span class="secno">4.2. </span><span class="content"> Justification </span><a class="self-link" href="#justification"></a></h3>
   <h4 class="heading settled" data-level="4.2.1" id="algorithms"><span class="secno">4.2.1. </span><span class="content"> Algorithms </span><a class="self-link" href="#algorithms"></a></h4>
   <h5 class="heading settled" data-level="4.2.1.1" id="greedy"><span class="secno">4.2.1.1. </span><span class="content"> Greedy </span><a class="self-link" href="#greedy"></a></h5>
   <h5 class="heading settled" data-level="4.2.1.2" id="knuth-plass-tex"><span class="secno">4.2.1.2. </span><span class="content">Knuth-Plass (TeX) </span><a class="self-link" href="#knuth-plass-tex"></a></h5>
   <h5 class="heading settled" data-level="4.2.1.3" id="adobe-indesign"><span class="secno">4.2.1.3. </span><span class="content">Adobe (InDesign) </span><a class="self-link" href="#adobe-indesign"></a></h5>
   <h2 class="heading settled" data-level="5" id="paginating-single-column-text"><span class="secno">5. </span><span class="content"> Paginating Single-Column Text </span><a class="self-link" href="#paginating-single-column-text"></a></h2>
   <p>The simplest situation, which is very common, is when the content is only text, in a single column. Aside from chapter and book optimizations (to be discussed later) and line-breaking, the biggest issue is likely to be widows (see <a href="#fig-widow1">this figure</a> for an example).</p>
   <h3 class="heading settled" data-level="5.1" id="widows"><span class="secno">5.1. </span><span class="content"> Widows </span><a class="self-link" href="#widows"></a></h3>
   <p>A <dfn data-dfn-type="dfn" data-noexport id="widow">widow<a class="self-link" href="#widow"></a></dfn> is when the last line(s) of a paragraph falls at the top of a page. Publishers have different standards. Most frown on a single line at the top of the page, although some are OK if that line spans at least three-quarters of the page. Others require at least two lines of a paragraph at the top of a page.</p>
   <p class="note" role="note"><span>Note:</span> <a data-link-type="biblio" href="#biblio-css3-break">[css3-break]</a> includes the <span class="css">widows</span> and <span class="css">orphans</span> properties, with integer values.</p>
   <p class="issue" id="issue-e72aff16"><a class="self-link" href="#issue-e72aff16"></a> <a data-link-type="biblio" href="#biblio-css3-break">[css3-break]</a> does not consider a fractional value for the <span class="css">widow</span> or <span class="css">orphan</span> properties.</p>
   <figure id="fig-widow1">
     <img alt="diagram of facing text pages with widow at top of verso page" src="images/image01.png" width="480"> 
    <figcaption> Text spread with widow </figcaption>
   </figure>
   <p>Many typesetting systems have settings to prevent widows. CSS discusses these issues in <a data-link-type="biblio" href="#biblio-css3-break">[css3-break]</a>. Unfortunately, these systems usually create another problem when they fix the widow. In <a href="#fig-widow2">this figure</a>, there’s no longer a widow at the top of the page, but since the system merely moved a line from the left page to the right, it left behind an empty line, and the pages no longer align at the bottom.</p>
   <figure id="fig-widow2">
     <img alt="diagram of facing text pages where left page is one line shorter than right page" src="images/image03.png" width="480"> 
    <figcaption> Widow fixed, but pages don’t align </figcaption>
   </figure>
   <p>More needs to be done. Removing one line of text from each page of the spread, shown in <a href="#fig-widow3">this figure</a>, solves the problem.</p>
   <figure id="fig-widow3">
     <img alt="diagram of facing text pages where left page is one line shorter than right page" src="images/image02.png" width="480"> 
    <figcaption> Widow fixed by “running short.” </figcaption>
   </figure>
   <h3 class="heading settled" data-level="5.2" id="orphans"><span class="secno">5.2. </span><span class="content"> Orphans </span><a class="self-link" href="#orphans"></a></h3>
   <p>An <dfn data-dfn-type="dfn" data-noexport id="orphan">orphan<a class="self-link" href="#orphan"></a></dfn> has two possible meanings in typesetting. It can refer to the minimum number of lines required before a page break (as in <a data-link-type="biblio" href="#biblio-css3-break">[css3-break]</a>). It can also refer to the last line of a paragraph in any context. In the former context, many publishers now accept a single line of a paragraph before a page break. For the latter, standards vary widely. Some publishers want the last line to be longer than the paragraph indent. Some require one or two full words, or a certain number of characters. Most avoid having only a fragment of a word as the last line.</p>
   <p class="issue" id="issue-251abe22"><a class="self-link" href="#issue-251abe22"></a> CSS does not currently address the second meaning of orphan.</p>
   <h3 class="heading settled" data-level="5.3" id="constraints-on-page-depth"><span class="secno">5.3. </span><span class="content"> Constraints on page depth </span><a class="self-link" href="#constraints-on-page-depth"></a></h3>
   <p>In traditional typesetting, the first defense against bad breaks is to change the depth of the page. “Running long” or “running short” means including one more (or one less) line of text on each page of the spread, thus sidestepping the previously-identified issue.</p>
   <p>A typical book design includes instructions on whether it’s acceptable to run short, long, or (more rarely) both. Often there are also constraints on how many consecutive spreads (or pages) may be altered in this way. If running both long and short, it’s usually forbidden to go from one to another without an intervening normal spread.</p>
   <p>Running long or short may affect the space between the last line of text and a page footer or folio. Most publishers prefer  footers to be in a fixed position. If, instead, the space between the last line of text and the footer is fixed, the footer is said to "bounce."</p>
   <h3 class="heading settled" data-level="5.4" id="facing-pages"><span class="secno">5.4. </span><span class="content"> Facing Pages </span><a class="self-link" href="#facing-pages"></a></h3>
   <p>If a document has facing pages, the publisher usually requires that they align top and bottom. Exceptions include:</p>
   <ol>
    <li> It’s the last page of a chapter. 
    <li> The page contains no text—only images or tables 
    <li> When aligning facing pages will make some other issue worse 
   </ol>
   <h3 class="heading settled" data-level="5.5" id="recto-and-verso-hyphens"><span class="secno">5.5. </span><span class="content"> Recto and Verso Hyphens </span><a class="self-link" href="#recto-and-verso-hyphens"></a></h3>
   <p>Publishers sometimes constrain what characters may appear before a page break. Most commonly, the right-hand page of a spread may not end with a word fragment, as the reader must turn the page before reading the rest of the word. Less common is a prohibition on the verso page ending with a hyphen.</p>
   <h3 class="heading settled" data-level="5.6" id="space-breaks-and-ornaments"><span class="secno">5.6. </span><span class="content"> Space Breaks and Ornaments </span><a class="self-link" href="#space-breaks-and-ornaments"></a></h3>
   <p>Many novels, and some narrative non-fiction books, include small breaks in the text. These are usually represented by one to three blank lines, or by a small ornament or dingbat. Problems arise when these breaks fall at the top or bottom of a page.</p>
   <figure id="fig-spacebreak1">
     <img alt src="images/image04.png" width="480"> 
    <figcaption> Space break </figcaption>
   </figure>
   <p>If, however, the space break falls at the bottom of the page, confusion can result. In <a href="#fig-spacebreak2">the figure below</a>, it’s hard to tell there’s a space break, as it just looks like the page is a few lines short.</p>
   <figure id="fig-spacebreak2">
     <img alt src="images/image05.png" width="480"> 
    <figcaption> Incorrect: Space break at bottom of page </figcaption>
   </figure>
   <p>In that case, asterisks or some other ornament is added to the top or bottom of a page, as a visual reminder of the break. To get everything to work out, the spread was run short, and the space break (now with ornament) pushed to the top of the second page:</p>
   <figure id="fig-spacebreak3">
     <img alt src="images/image00.png" width="480"> 
    <figcaption> Space break at top of page with asterisks </figcaption>
   </figure>
   <p class="issue" id="issue-e58fcd00"><a class="self-link" href="#issue-e58fcd00"></a> This is an example where the page position of an element determines its content as well as design. A <code>::page-top</code> or <code>::page-bottom</code> pseudo-element might prove useful.</p>
   <h2 class="heading settled" data-level="6" id="paragraphs-and-indentation"><span class="secno">6. </span><span class="content"> Paragraphs and indentation </span><a class="self-link" href="#paragraphs-and-indentation"></a></h2>
   <h2 class="heading settled" data-level="7" id="fonts"><span class="secno">7. </span><span class="content"> Fonts </span><a class="self-link" href="#fonts"></a></h2>
   <p>Texts are built from letters. Modern typesetting systems must be able to choose from hundreds or thousands of glyphs depending on the circumstances.</p>
   <h3 class="heading settled" data-level="7.1" id="ligatures"><span class="secno">7.1. </span><span class="content"> Ligatures </span><a class="self-link" href="#ligatures"></a></h3>
   <p>Two or more letters may be better displayed as a single glyph:</p>
   <div class="example" id="example-21a6c3ca"><a class="self-link" href="#example-21a6c3ca"></a> Example TK </div>
   <h3 class="heading settled" data-level="7.2" id="numbers"><span class="secno">7.2. </span><span class="content"> Numbers and math </span><a class="self-link" href="#numbers"></a></h3>
   <h4 class="heading settled" data-level="7.2.1" id="lining-figures"><span class="secno">7.2.1. </span><span class="content"> Lining, oldstyle, and tabular figures </span><a class="self-link" href="#lining-figures"></a></h4>
   <p>Traditionally, text set in mixed-case type should use old-style figures. Text set in all caps should use lining figures. Columns of numbers (such as in tables) are clearer using tabular figures, which are of uniform width.</p>
   <div class="example" id="example-57db08c4">
    <a class="self-link" href="#example-57db08c4"></a> 
    <figure>
      <img alt="excerpt from Moby-Dick showing old-style figures" src="images/onum.png" width="480"> 
     <figcaption>Old-style figures in text</figcaption>
    </figure>
    <figure>
      <img alt="excerpt from Moby-Dick showing lining figures" src="images/lnum.png" width="480"> 
     <figcaption>Lining figures in headline</figcaption>
    </figure>
   </div>
   <h3 class="heading settled" data-level="7.3" id="alternate-forms"><span class="secno">7.3. </span><span class="content"> Alternate forms </span><a class="self-link" href="#alternate-forms"></a></h3>
   <h4 class="heading settled" data-level="7.3.1" id="caps"><span class="secno">7.3.1. </span><span class="content"> Caps </span><a class="self-link" href="#caps"></a></h4>
   <p>Text may be set in a mix of uppercase and lowercase, exclusively in upper- or lowercase, in small caps, in caps/small caps, etc. In many cases this is purely a design choice, and the displayed text may use a different case than the source document.</p>
   <h4 class="heading settled" data-level="7.3.2" id="swashes-and-stylistic-alternates"><span class="secno">7.3.2. </span><span class="content"> Swashes and Stylistic Alternates </span><a class="self-link" href="#swashes-and-stylistic-alternates"></a></h4>
   <div class="example" id="example-d9d1e0cc">
    <a class="self-link" href="#example-d9d1e0cc"></a> 
    <figure>
      <img alt="two identical headings, the top without swashes and the bottom with swashes" src="images/swsh.png" width="480"> 
     <figcaption>Bickham Script Pro without (top) and with (bottom) swashes</figcaption>
    </figure>
   </div>
   <h2 class="heading settled" data-level="8" id="initial-capitals"><span class="secno">8. </span><span class="content"> Initial Capitals </span><a class="self-link" href="#initial-capitals"></a></h2>
   <p>Large, decorative letters have been used to start new sections of text since long before printing. In fact, their use predates lowercase letters entirely.</p>
   <h3 class="heading settled" data-level="8.1" id="drop-caps"><span class="secno">8.1. </span><span class="content"> Drop caps </span><a class="self-link" href="#drop-caps"></a></h3>
   <p>A <dfn data-dfn-type="dfn" data-noexport id="drop-cap">drop cap<a class="self-link" href="#drop-cap"></a></dfn> is a larger-than-usual letter at the start of a paragraph, with a baseline at least one line lower than the first baseline of the paragraph. The size of drop caps is usually indicated by how many lines they occupy—two-line and three-line drop caps are the most common.</p>
   <figure id="fig-2-line-drop-cap">
     <img alt src="images/Dropcap-lines.png" width="480"> 
    <figcaption> Two-line drop cap </figcaption>
   </figure>
   <p>Aligning the letter vertically is a challenge. The cap height of the letter should align with the cap height of the first line of text. The baseline of the letter should fall on the baseline of one of the following lines (the second for a 2-line drop cap, etc.).</p>
   <figure id="fig-3-line-drop-cap">
     <img alt src="images/3-line-drop-cap.png" width="480"> 
    <figcaption> Three-line drop cap </figcaption>
   </figure>
   <p>The horizontal position of the drop cap and the surrounding text is also an issue, as variations in glyph shapes may require increasing or decreasing space to the right of the drop cap, and in some cases separate adjustments may be required for each line adjacent to the drop cap.</p>
   <figure id="fig-drop-cap-no-runaround">
     <img alt src="images/drop-cap-no-runaround.png" width="480"> 
    <figcaption> Drop cap without runaround </figcaption>
   </figure>
   <figure id="fig-drop-cap-runaround">
     <img alt src="images/drop-cap-with-runaround.png" width="480"> 
    <figcaption> Drop cap with runaround </figcaption>
   </figure>
   <p>The position of a drop cap in relation to the left margin may also need to be adjusted. Letters like "C" may need to move left slightly to visually align with the left margin.</p>
   <p>A drop cap may be desired on a paragraph which starts with a punctuation mark, most often a quotation mark. In this case, one option is to delete the quotation mark entirely.</p>
   <p class="issue" id="issue-e5c45af9"><a class="self-link" href="#issue-e5c45af9"></a> Input on techniques for coping with initial punctuation on drop caps would be appreciated.</p>
   <h3 class="heading settled" data-level="8.2" id="raised-caps-and-sunken-caps"><span class="secno">8.2. </span><span class="content"> Raised caps and sunken caps </span><a class="self-link" href="#raised-caps-and-sunken-caps"></a></h3>
   <p>A <dfn data-dfn-type="dfn" data-noexport id="raised-cap">raised cap<a class="self-link" href="#raised-cap"></a></dfn> is a large letter used to start a paragraph, which uses the same baseline as the rest of the first line. A <dfn data-dfn-type="dfn" data-noexport id="sunken-cap">sunken cap<a class="self-link" href="#sunken-cap"></a></dfn> both sinks below the text baseline, and extends above.</p>
   <figure>
     <img alt="raised cap" src="images/RaisedCap.png" width="480"> 
    <figcaption>Raised cap. The initial letter is the size of a 3-line initial, but does not drop.</figcaption>
   </figure>
   <figure>
     <img alt="sunken drop initial" src="images/SunkenCapA.png" width="480"> 
    <figcaption>Sunken cap. The letter drops to the second line, but is the size of a three-line initial letter.</figcaption>
   </figure>
   <p class="note" role="note"><span>Note:</span> The CSS Working Group has proposed an initial-letter property to allow for properly-aligned drop caps. See <a href="http://dev.w3.org/csswg/css-inline/#DropInitial">dev.w3.org/csswg/css-inline/#DropInitial</a>.</p>
   <h2 class="heading settled" data-level="9" id="running-headers-and-footers"><span class="secno">9. </span><span class="content"> Running headers and footers </span><a class="self-link" href="#running-headers-and-footers"></a></h2>
   <p>Books often have material printed at the top and/or bottom of each page, outside the normal content area. These headers or footers may serve as guideposts for reader, fodder for designers, low-tech DRM, or merely a way to know what book your fellow train passenger is reading. There’s more to running headers than is dreamt of in the open web platform…</p>
   <h3 class="heading settled" data-level="9.1" id="content"><span class="secno">9.1. </span><span class="content"> Content </span><a class="self-link" href="#content"></a></h3>
   <p>Running heads and footers may contain:</p>
   <ul>
    <li> Content from the document: book title, chapter or part titles, author name(s). Indexes and notes sections may have running heads to identify which entries are on a particular page. 
    <li> Content intended only for running heads: shortened versions of chapter titles…
    <li> Counters of all sorts: page numbers, section numbers, chapter numbers. 
    <li> Ornaments, decorative type, or images 
    <li> Copyright statements or other boilerplate 
    <li> Date and/or time stamps 
    <li> File names 
    <li> Version numbers 
    <li> combinations of the above 
   </ul>
   <p>In some cases the content of running heads may have an internal structure—a chapter title might have an italic word—or may require different text styles or fonts.</p>
   <div class="example" id="example-13b52c7c">
    <a class="self-link" href="#example-13b52c7c"></a> 
    <figure id="fig-runninghead-ornament">
      <img alt src="images/RunningHead.png" width="480"> 
     <figcaption> Running head with text ornament </figcaption>
    </figure>
    <p>In this example, the running header contains the author name, the page number, and an ornament. This seemingly simple case was quite complex, using <a data-link-type="biblio" href="#biblio-css3-gcpm">[css3-gcpm]</a>-like features implemented by PrinceXML.</p>
<pre class="highlight">@page body:left {
  @top-center { 
    content: flow(verso);
    }
  }

p.verso-cus {
  flow: static(verso);
  content: prince-glyph-index(80);
  font-family: 'Type Embellishments One';
  font-size: 10pt;
  text-align: center;
}

p.verso-cus:before {
  content: counter(page);
  display: inline;
  padding-right: 15pt;
  font-family: 'Garamond 3 LT Std';
  font-style: italic;
  font-size: 10pt;
}

p.verso-cus:after {
  content: string(flow-header-left-rw);
  display: inline;
  padding-left: 15pt;
  font-family: 'Garamond 3 LT Std';
  font-style: italic;
  font-size: 10pt;
}

</pre>
   </div>
   <h3 class="heading settled" data-level="9.2" id="which-content"><span class="secno">9.2. </span><span class="content"> Which content? </span><a class="self-link" href="#which-content"></a></h3>
   <p>An element whose content is used in running heads may appear many times on a page. Authors must be able to specify which instance is used. <a data-link-type="biblio" href="#biblio-css3-gcpm">[css3-gcpm]</a> provides the start, first, last, and first-except keywords to accomplish this:</p>
   <dl>
    <dt>first
    <dd>The value of the first assignment on the page is used. If there is no assignment on the page, the "entry value" is used.
    <dt>start
    <dd>If the element is the first element on the page, the value of the first assignment is used. Otherwise the "entry value" is used. The "entry value" may be empty if the element hasn’t yet appeared.
    <dt>last
    <dd>The "exit value" of the named string is used.
    <dt>first-except
    <dd>This is identical to <code>first</code>, except that the empty string is used on the page where the value is assigned.
   </dl>
   <p class="issue" id="issue-43c52f4c"><a class="self-link" href="#issue-43c52f4c"></a> Are these values enough to handle indexes, dictionaries, and other use cases?</p>
   <h3 class="heading settled" data-level="9.3" id="placement"><span class="secno">9.3. </span><span class="content"> Placement </span><a class="self-link" href="#placement"></a></h3>
   <p>Running headers and footers may appear in almost any position on a page.</p>
   <ul>
    <li>The position of the running head may be different on first pages vs subsequent pages, or the running head may be omitted on first pages
    <li>Running heads may align to the inside or outside, and thus be different on left and right pages. 
    <li>Authors may need to control the layering of running head text (i.e. “z-index”).
    <li>The running head may overflow the page boundary (i.e. “bleed”)
    <li>The running head may be rotated
   </ul>
   <div class="note" role="note">
    <p>Running headers are addressed by <a data-link-type="biblio" href="#biblio-css3-gcpm">[css3-gcpm]</a>.</p>
    <p>EPUB 3.0 has now deprecated support for headers and footers using <code>oeb-page-head</code> and <code>oeb-page-foot</code>.</p>
   </div>
   <h2 class="heading settled" data-level="10" id="heads"><span class="secno">10. </span><span class="content"> Heads </span><a class="self-link" href="#heads"></a></h2>
   <h3 class="heading settled" data-level="10.1" id="general-considerations"><span class="secno">10.1. </span><span class="content"> General Considerations </span><a class="self-link" href="#general-considerations"></a></h3>
   <p>TK</p>
   <h3 class="heading settled" data-level="10.2" id="heads-at-the-top-of-a-page"><span class="secno">10.2. </span><span class="content"> Heads at the top of a page </span><a class="self-link" href="#heads-at-the-top-of-a-page"></a></h3>
   <p>When a head falls at the top of a page, a spacing adjustment is often necessary. Here’s a typical arrangement, with a line and a half of space above the head, and a half-line-space below, so that the text stays on the proper baselines.</p>
   <figure id="fig-head-text">
     <img alt src="images/HeadInText.png" width="480"> 
    <figcaption> Level One Head in Text </figcaption>
   </figure>
   <p>If that head appears at the top of the page, the subsequent text will be off by a half-line.</p>
   <figure id="fig-head-text2">
     <img alt src="images/HeadInText2.png" width="480"> 
    <figcaption> Head at top of page</figcaption>
   </figure>
   <p>Everything works out if we add a half-line-space back.</p>
   <figure id="fig-head-text3">
     <img alt src="images/HeadInText3.png" width="480"> 
    <figcaption> Head sunk to get back on lead</figcaption>
   </figure>
   <h3 class="heading settled" data-level="10.3" id="heads-at-the-bottom-of-a-page"><span class="secno">10.3. </span><span class="content"> Heads at the bottom of a page </span><a class="self-link" href="#heads-at-the-bottom-of-a-page"></a></h3>
   <p>A head should never be the last thing on a page; it must be followed by two or three lines of text.</p>
   <h3 class="heading settled" data-level="10.4" id="bridge-heads-side-heads-and-run-in-heads"><span class="secno">10.4. </span><span class="content"> Bridge heads, side heads, and run-in heads </span><a class="self-link" href="#bridge-heads-side-heads-and-run-in-heads"></a></h3>
   <p>TK</p>
   <h2 class="heading settled" data-level="11" id="images"><span class="secno">11. </span><span class="content"> Images </span><a class="self-link" href="#images"></a></h2>
   <h3 class="heading settled" data-level="11.1" id="tk"><span class="secno">11.1. </span><span class="content"> TK </span><a class="self-link" href="#tk"></a></h3>
   <figure id="fig-image-caption">
     <img alt src="images/ImageCaptionRunaround.png" width="480"> 
    <figcaption> Figure with caption and runaround </figcaption>
   </figure>
   <p>Some things to note about this image:</p>
   <ol>
    <li> the caption and image are treated as a unit 
    <li> Text runs around the image+caption 
    <li> image runs right up to the gutter of the page (i.e. extends beyond usual content area) 
   </ol>
   <h3 class="heading settled" data-level="11.2" id="inline-images"><span class="secno">11.2. </span><span class="content"> Inline images </span><a class="self-link" href="#inline-images"></a></h3>
   <p>TK</p>
   <h3 class="heading settled" data-level="11.3" id="image-bleeds"><span class="secno">11.3. </span><span class="content">Bleeds</span><a class="self-link" href="#image-bleeds"></a></h3>
   <p>TK</p>
   <p>Images that cross spread</p>
   <p>image before callout?</p>
   <p>placing multiple images on page… inside/outside, top/bottom, stagger</p>
   <p>broadside</p>
   <p>placement of caption/title</p>
   <h2 class="heading settled" data-level="12" id="tables"><span class="secno">12. </span><span class="content"> Tables </span><a class="self-link" href="#tables"></a></h2>
   <h3 class="heading settled" data-level="12.1" id="alignment"><span class="secno">12.1. </span><span class="content"> Alignment </span><a class="self-link" href="#alignment"></a></h3>
   <p>Many tables have specialized requirements for the alignment of cells in a given column.</p>
   <h4 class="heading settled" data-level="12.1.1" id="align-on-character"><span class="secno">12.1.1. </span><span class="content"> Align on character </span><a class="self-link" href="#align-on-character"></a></h4>
   <p>All entries in a given column may need to align to a predetermined character, most commonly a decimal point. Typically, the longest entry in the column should be centered, and then the other entries should align to that entry.</p>
   <p>In some cases, a composite “longest entry” needs to be constructed:</p>
<pre>|   445.85  |
| 12345.6   |
|     1.234 |
|      .1   |
</pre>
   <p>In this case, the user agent should act as if 12345.234 was the longest line, so the margin to the left of 12345.6 will be equal to the margin to the right of 1.234.</p>
   <p>When a collection of whole numbers with no decimal points are in a column and are asked to align, the longest whole number should center in the column and the rest of the whole numbers should right align on the right indent of the longest whole number.</p>
   <p>If the content of a table cell is being aligned to a character, that content should not have wrapping applied by the rendering system.</p>
   <h4 class="heading settled" data-level="12.1.2" id="flush-left-center-alignment"><span class="secno">12.1.2. </span><span class="content"> Flush left center alignment </span><a class="self-link" href="#flush-left-center-alignment"></a></h4>
   <p class="issue" id="issue-b68fc9b2"><a class="self-link" href="#issue-b68fc9b2"></a> What should we call this?</p>
   <p>Also known as centering on the longest line, the longest line in a column is found and centered, and other entries in the column are aligned to the left edge of the longest line.</p>
   <p>As before, header and footer cells are ignored, and the author should be able to exclude specified cells from the alignment process.</p>
   <p>This type of alignment is often used in text, for poetry or prose extracts.</p>
   <p>User agents should not break single-word cells.</p>
   <h3 class="heading settled" data-level="12.2" id="table-widths"><span class="secno">12.2. </span><span class="content"> Table widths </span><a class="self-link" href="#table-widths"></a></h3>
   <p>In print, tables are not randomly sized but typically set to one of a few fixed widths. This requirement necessitates that a composition engine know how to “snap to” one of the desired widths. This may help show relationships between separate tables.</p>
   <p>broadside</p>
   <p>placement of caption/title</p>
   <p>spread</p>
   <p>multi-page</p>
   <p>continued lines</p>
   <h2 class="heading settled" data-level="13" id="lists"><span class="secno">13. </span><span class="content"> Lists, Indexes, and Tables of Contents </span><a class="self-link" href="#lists"></a></h2>
   <h3 class="heading settled" data-level="13.1" id="indexes"><span class="secno">13.1. </span><span class="content"> Indexes </span><a class="self-link" href="#indexes"></a></h3>
   <h4 class="heading settled" data-level="13.1.1" id="collapsing-page-ranges"><span class="secno">13.1.1. </span><span class="content"> Collapsing Page Ranges </span><a class="self-link" href="#collapsing-page-ranges"></a></h4>
   <p>When generating indexes or referring to page ranges, one often ends up with duplicated or sequential numbers.</p>
   <div class="example" id="example-551f1c1b">
    <a class="self-link" href="#example-551f1c1b"></a> 
<pre>1, 3, 3, 7, 8, 9, 10, 16
</pre>
    <p>This should be formatted as:</p>
<pre>1, 3, 7–10, 16
</pre>
    <p>with duplicates removed and consecutive numbers replaced by ranges.</p>
   </div>
   <h2 class="heading settled" data-level="14" id="footnotes"><span class="secno">14. </span><span class="content"> Footnotes </span><a class="self-link" href="#footnotes"></a></h2>
   <blockquote>
    <p>Having to read footnotes resembles having to go downstairs to answer the door while in the midst of making love.</p>
    <p class="source">—Noël Coward</p>
   </blockquote>
   <p>In print publishing, a footnote consists of two parts: a reference (often rendered as an asterisk or superscripted number) and the footnote body.</p>
   <p>Footnotes themselves can be quite complicated. Footnotes can contain multiple paragraphs, block quotes, poems, lists, and tables. Footnotes can contain other footnotes (an edge case, admittedly, but David Foster Wallace was notorious for this). Footnotes can extend across multiple pages. In short, a footnote is a container that can hold almost anything.</p>
   <p>In order to describe footnotes in HTML, one must separate the footnote reference (which is an inline element) from the footnote itself, as HTML frowns on placing complex block structures inside paragraphs. This is quite different from something like DocBook, where the content model allows a footnote element inside a paragraph, and that footnote can itself contain multiple paragraphs, etc.</p>
<pre class="example highlight" id="example-3a984f24"><a class="self-link" href="#example-3a984f24"></a>&lt;p>It was the best of times&lt;span class="ref-footnote-rw">*&lt;/span>, it was the blurst of times.&lt;/p>

&lt;div class="block-rw footnotes-rw">
&lt;p>&lt;span class="num-footnote-rw">*&lt;/span>Oh yes, but the telephone is so impersonal.&lt;/p>
&lt;p>I prefer the hands-on touch you only get with hired goons.&lt;/p>
&lt;/div>
</pre>
   <p>There may also be more than one reference to the same footnote.</p>
   <p>Footnote handling as described in <a data-link-type="biblio" href="#biblio-css3-gcpm">[css3-gcpm]</a> assumes the footnote is coded inline at the point of reference. This situation is under discussion on the www-style list.</p>
   <h3 class="heading settled" data-level="14.1" id="inline-footnotes-and-multiple-footnote-regions"><span class="secno">14.1. </span><span class="content"> Inline footnotes and multiple footnote regions </span><a class="self-link" href="#inline-footnotes-and-multiple-footnote-regions"></a></h3>
   <p>Some types of footnotes may be displayed inline, as in the top <a href="#fig-footnote-inline">figure</a>. Other books (see <a href="#fig-footnote-regions">below</a>) may have two separate streams of footnotes, requiring two footnote regions.</p>
   <figure id="fig-footnote-inline">
     <img alt="Page of Hamlet showing inline footnotes above block footnotes" src="images/exegesis.png" width="480"> 
    <figcaption>Inline footnotes</figcaption>
   </figure>
   <figure id="fig-footnote-regions">
     <img alt="Page of Hamlet showing inline footnotes above block footnotes" src="images/hamlet.png" width="480"> 
    <figcaption> Multiple footnote regions </figcaption>
   </figure>
   <figure id="fig-footnote-regions2">
     <img alt src="images/PepysFootnotes.jpg" width="800"> 
    <figcaption> Multiple footnote regions #2 </figcaption>
   </figure>
   <h3 class="heading settled" data-level="14.2" id="at-the-foot-of-what"><span class="secno">14.2. </span><span class="content"> At the foot of what? </span><a class="self-link" href="#at-the-foot-of-what"></a></h3>
   <p>Footnotes usually fall at the bottom of the page, but may need to be at placed at the end of a column, table, sidebar, or other document structure.</p>
   <h3 class="heading settled" data-level="14.3" id="breaking-footnotes-across-pages"><span class="secno">14.3. </span><span class="content"> Breaking footnotes across pages </span><a class="self-link" href="#breaking-footnotes-across-pages"></a></h3>
   <p>Some footnotes can extend across more than one page. Limits on the size of the footnote area(s) may be required, so that a page containing only footnotes is avoided.</p>
   <p class="note" role="note"><span>Note:</span> Sometimes, footnotes may require so much space that they cannot all be placed before the end of a document section. In this case, it’s acceptable to have pages that consist only of footnotes.</p>
   <h3 class="heading settled" data-level="14.4" id="numbering"><span class="secno">14.4. </span><span class="content"> Numbering </span><a class="self-link" href="#numbering"></a></h3>
   <p>Three questions must be answered when numbering footnotes. First, which numbering scheme should be used? Second, what are we actually numbering? Third, is the numbering system reset at some point in the document?</p>
   <h4 class="heading settled" data-level="14.4.1" id="numbering-schemes"><span class="secno">14.4.1. </span><span class="content"> Numbering schemes </span><a class="self-link" href="#numbering-schemes"></a></h4>
   <p>Footnotes are most commonly numbered with arabic numerals, lower-case letters, or a sequence of symbols: *, †, ‡, and §, ||, and #. With symbols, they may be doubled or tripled after exhausting the sequence, but long before |||||| is used, the choice of numbering should be re-evaluated.</p>
   <h4 class="heading settled" data-level="14.4.2" id="what-are-we-counting"><span class="secno">14.4.2. </span><span class="content"> What are we counting? </span><a class="self-link" href="#what-are-we-counting"></a></h4>
   <p>Usually, footnote numbers count footnotes. But in some cases, the reference may be a line number, paragraph number, or section number.</p>
   <h4 class="heading settled" data-level="14.4.3" id="resetting-numbers"><span class="secno">14.4.3. </span><span class="content"> Resetting numbers </span><a class="self-link" href="#resetting-numbers"></a></h4>
   <p>Footnote numbering may restart with each new chapter, or each new page. The former is common with numeric footnotes, the latter with footnotes using symbols.</p>
   <p class="note" role="note"><span>Note:</span> Footnotes are addressed by <a data-link-type="biblio" href="#biblio-css3-gcpm">[css3-gcpm]</a>.</p>
   <p class="note" role="note"><span>Note:</span> Digital publications often render footnotes differently from print. They may become pop-ups, move to the end of the section, or to the end of the document. We are not currently attempting to document digital best practices around footnotes.</p>
   <h2 class="heading settled" data-level="15" id="cross-references"><span class="secno">15. </span><span class="content"> Cross-references </span><a class="self-link" href="#cross-references"></a></h2>
   <p>Books often contain text that refers to other components of the same book. Such text commonly consists of the name or title of that component, along with a number used to identify that component.</p>
   <blockquote> as described in Chapter 14 </blockquote>
   <blockquote> From the Aiguille du Midi, follow <b>A16</b> to 2950m </blockquote>
   <blockquote> Make Anchovy Mayonnaise (page 762), with 6 or 8 anchovies. </blockquote>
   <blockquote> For another example, see Figure 1.4. </blockquote>
   <blockquote> and equation (31.3) shows it does not! </blockquote>
   <p>Many typesetting systems allow authors to generate numbers for such components. A cross-reference needs to be able to access such generated content from another location in the document.</p>
   <p class="note" role="note"><span>Note:</span> CSS provides counters to number things; creating cross-references would require a mechanism to access the value of a counter at a particular location. The <span class="css">target-counter</span> and <span class="css">target-counters</span> functions in <a data-link-type="biblio" href="#biblio-css3-content">[css3-content]</a> are designed to do this.</p>
   <p class="issue" id="issue-e5dc6ee0"><a class="self-link" href="#issue-e5dc6ee0"></a> <a data-link-type="biblio" href="#biblio-css3-content">[css3-content]</a> does not have a mechanism to customize the content of a cross-reference based on the type of element being referred to. See <a href="https://lists.w3.org/Archives/Public/public-digipub/2015Aug/0079.html">https://lists.w3.org/Archives/Public/public-digipub/2015Aug/0079.html</a> and subsequent discussion.</p>
   <h2 class="heading settled" data-level="16" id="sidebars"><span class="secno">16. </span><span class="content"> Sidebars </span><a class="self-link" href="#sidebars"></a></h2>
   <figure id="fig-sidebar">
     <img alt src="images/Sidebar.jpg" width="480"> 
    <figcaption> Sidebar </figcaption>
   </figure>
   <p>Some things to notice:</p>
   <ol>
    <li> The image floats to the top of the column inside the sidebar 
    <li> The columns themselves base-align 
    <li> The sidebar title and “supertitle” are on the same line. 
   </ol>
   <h2 class="heading settled" data-level="17" id="marginalia"><span class="secno">17. </span><span class="content"> Marginalia </span><a class="self-link" href="#marginalia"></a></h2>
   <p>alignment with reference</p>
   <h2 class="heading settled" data-level="18" id="equations"><span class="secno">18. </span><span class="content"> Equations </span><a class="self-link" href="#equations"></a></h2>
   <p>Mathematics is a critical part of many books, from learning materials for kindergartners to monographs on physics.</p>
   <h3 class="heading settled" data-level="18.1" id="breaking-equations"><span class="secno">18.1. </span><span class="content"> Breaking equations </span><a class="self-link" href="#breaking-equations"></a></h3>
   <p>TK</p>
   <h3 class="heading settled" data-level="18.2" id="numbering-equations"><span class="secno">18.2. </span><span class="content">Numbering equations </span><a class="self-link" href="#numbering-equations"></a></h3>
   <p>Equations are often numbered. In the figure below, note that the equations are centered horizontally, the equation number is flush right, and the equation number is centered vertically relative to the equation.</p>
   <figure id="fig-numbering-equations">
     <img alt="Excerpt from Wikipedia article on differential forms, showing Maxwell’s equations in two lines, centered horizontally, with equation number aligned to the right margin and vertically centered" src="images/Maxwell.png" width="480"> 
    <figcaption> Equation Number </figcaption>
   </figure>
   <p class="note" role="note"><span>Note:</span> The alignment in this figure was implemented with <a data-link-type="biblio" href="#biblio-css-flexbox-1">[css-flexbox-1]</a>.</p>
   <h3 class="heading settled" data-level="18.3" id="aligning-equations"><span class="secno">18.3. </span><span class="content"> Aligning equations </span><a class="self-link" href="#aligning-equations"></a></h3>
   <p>Some publishers require that all equations on a page align on the equals sign.</p>
<pre>    x + 3z = 7 + 2y
    
2x + y + z = 4

Intervening text which may
extend for several lines


   10 + 2y = 3x + 2z
</pre>
   <p class="note" role="note"><span>Note:</span> the alignment is generally scoped to a page or (more likely) a defined set of equations.</p>
   <p class="note" role="note"><span>Note:</span> this is similar to how numbers in a table column may align on a decimal point or other character.</p>
   <h3 class="heading settled" data-level="18.4" id="annotating-equations"><span class="secno">18.4. </span><span class="content"> Annotating equations</span><a class="self-link" href="#annotating-equations"></a></h3>
   <figure id="fig-annotating-equations">
     <img alt src="images/golf_annotated.png" width="480"> 
    <figcaption> Annotated Equation from <a href="https://what-if.xkcd.com/85/">XKCD’s What if?</a> </figcaption>
   </figure>
   <h2 class="heading settled" data-level="19" id="columns"><span class="secno">19. </span><span class="content"> Columns </span><a class="self-link" href="#columns"></a></h2>
   <p>Often the first page of a chapter or article will be set in a single column, and subsequent pages set in multiple columns.</p>
   <figure id="fig-1to2col">
     <img alt="diagram of facing text pages with one column on first page, and two on second page" src="images/OneColumnToTwoColumns.png" width="480"> 
    <figcaption> One column text flows to two columns </figcaption>
   </figure>
   <h2 class="heading settled" data-level="20" id="punctuation"><span class="secno">20. </span><span class="content"> Punctuation </span><a class="self-link" href="#punctuation"></a></h2>
   <p>Spacing around punctuation marks is a known obsession of typographers.</p>
   <h3 class="heading settled" data-level="20.1" id="language-specific-spacing-rules"><span class="secno">20.1. </span><span class="content"> Language-specific spacing rules </span><a class="self-link" href="#language-specific-spacing-rules"></a></h3>
   <table>
    <tbody>
     <tr>
      <td>Punctuation
      <td>English
      <td>French
      <td>Spanish
     <tr>
      <td>Exclamation Point
      <td>!
      <td>[thin space]!
      <td>¡text!
     <tr>
      <td>Colon
      <td>:
      <td>[thin space]:
      <td>:
     <tr>
      <td>Question Mark
      <td>?
      <td>[thin space]?
      <td>¿text?
     <tr>
      <td>Open Quote
      <td>“
      <td>«[thin space]
      <td>“
     <tr>
      <td>Close Quote
      <td>”
      <td>[thin space]»
      <td>”
   </table>
   <h3 class="heading settled" data-level="20.2" id="em-dashes-and-en-dashes"><span class="secno">20.2. </span><span class="content"> Em-dashes and en-dashes </span><a class="self-link" href="#em-dashes-and-en-dashes"></a></h3>
   <p>To space or not to space? That is the question. Even within publishing houses, arguments continue over the proper display of em-dashes. Some imprints at Hachette use closed em-dashes, others insist on thin spaces around em-dashes. If the same book is to be published in the United Kingdom, em-dashes would be replaced with en-dashes, with larger spaces around them.</p>
   <p>Given the subtlety of many of these rules, it’s helpful to use CSS to generate typographically-sophisticated output from material written by lay authors, or to adapt content to varying publisher or language requirements.</p>
   <div class="example" id="example-f9bf4194">
    <a class="self-link" href="#example-f9bf4194"></a> 
    <p>Older drafts of <a data-link-type="biblio" href="#biblio-css3-gcpm">[css3-gcpm]</a> contained a <dfn data-dfn-type="dfn" data-noexport id="text-replace">text-replace<a class="self-link" href="#text-replace"></a></dfn> property, which has been implemented by PrinceXML.</p>
<pre>body {
prince-text-replace: "—" "\200A—\200A";
}
</pre>
    <p>In this example, we’re adding hair spaces around em-dashes.</p>
   </div>
   <h3 class="heading settled" data-level="20.3" id="number-formatting"><span class="secno">20.3. </span><span class="content"> Number formatting </span><a class="self-link" href="#number-formatting"></a></h3>
   <p>Different languages have different conventions for formatting numbers. Punctuation marks are inserted at specified points in numbers to aid readability. For example, in English commas are used to separate groups of digits, and a period to denote the decimal point.</p>
   <div class="example" id="example-4e23bd16">
    <a class="self-link" href="#example-4e23bd16"></a> 
<pre>299,792,458.0
</pre>
   </div>
   <p>However, in Spanish and Norwegian the roles are reversed, with the period used to group digits, and the comma for the decimal point:</p>
   <div class="example" id="example-d70a3a4e">
    <a class="self-link" href="#example-d70a3a4e"></a> 
<pre>299.792.458,0
</pre>
   </div>
   <table>
    <tbody>
     <tr>
      <th>Language
      <th>Grouping separator
      <th>Decimal separator
     <tr>
      <td>Austria, Belgium, Brazil, Canada (fr), Czech Republic, Denmark, Estonia, Finland, France, Germany, Hungary, Italy, Netherlands, Norway, Peru, Poland, Portugal, Romania, South Africa, Spain, Sweden, Switzerland
      <td>space
      <td>comma
     <tr>
      <td>Argentina, Austria, Brazil, Denmark, Germany, Italy, Portugal, Romania, Slovenia, Spain (older)
      <td>period
      <td>comma
     <tr>
      <td>Great Britain, United States
      <td>comma
      <td>period
     <tr>
      <td>
      <td>
      <td>
     <tr>
      <td>
      <td>
      <td>
     <tr>
      <td>
      <td>
      <td>
     <tr>
      <td>
      <td>
      <td>
     <tr>
      <td>
      <td>
      <td>
   </table>
   <p class="note" role="note"><span>Note:</span> The CSSWG has <a href="https://wiki.csswg.org/ideas/content-formatting">informally proposed</a> a method for formatting numbers.</p>
   <h2 class="heading settled" data-level="21" id="special-considerations-for-genres"><span class="secno">21. </span><span class="content"> Special Considerations for Genres </span><a class="self-link" href="#special-considerations-for-genres"></a></h2>
   <h3 class="heading settled" data-level="21.1" id="education"><span class="secno">21.1. </span><span class="content"> Education </span><a class="self-link" href="#education"></a></h3>
   <ul>
    <li> College textbooks 
    <li> Elhi 
    <li> Language 
    <li> Study guides 
   </ul>
   <h3 class="heading settled" data-level="21.2" id="trade"><span class="secno">21.2. </span><span class="content"> Trade </span><a class="self-link" href="#trade"></a></h3>
   <ul>
    <li> Fiction 
    <li> Narrative nonfiction 
    <li> Children’s 
    <li> YA 
    <li>
      Religious 
     <ul>
      <li> Bibles 
     </ul>
    <li> Travel 
    <li> How-to 
    <li> Manga/Comics/Graphic Novels 
   </ul>
   <h3 class="heading settled" data-level="21.3" id="stem"><span class="secno">21.3. </span><span class="content"> STEM </span><a class="self-link" href="#stem"></a></h3>
   <h3 class="heading settled" data-level="21.4" id="reference"><span class="secno">21.4. </span><span class="content"> Reference </span><a class="self-link" href="#reference"></a></h3>
   <ul>
    <li> Legal 
    <li> Dictionaries 
   </ul>
   <h2 class="heading settled" data-level="22" id="digital-issues"><span class="secno">22. </span><span class="content"> Digital Issues </span><a class="self-link" href="#digital-issues"></a></h2>
   <h2 class="heading settled" data-level="23" id="large-scale-issues-in-pagination"><span class="secno">23. </span><span class="content"> Large-Scale Issues in Pagination </span><a class="self-link" href="#large-scale-issues-in-pagination"></a></h2>
   <h3 class="heading settled" data-level="23.1" id="book-optimization"><span class="secno">23.1. </span><span class="content"> Book optimization </span><a class="self-link" href="#book-optimization"></a></h3>
   <p>In trade publishing, we often know how many pages will be in a book before it is written. The nature of printing and binding also mandate that the number of pages in a book be some multiple of eight, sixteen, or thirty-two pages. Publishers often limit how many blank pages are allowed at the end of a book.</p>
   <h3 class="heading settled" data-level="23.2" id="chapter-optimization"><span class="secno">23.2. </span><span class="content"> Chapter optimization </span><a class="self-link" href="#chapter-optimization"></a></h3>
   <p>A chapter that ends with only a few lines of text looks like a mistake, and wastes paper (or electrons!) Generally a page should contain at least five lines of text.</p>
   <h2 class="no-num heading settled" id="baseline-grids"><span class="content">Appendix A: Baseline Grids</span><a class="self-link" href="#baseline-grids"></a></h2>
   <p>A baseline grid is a series of evenly-spaced horizontal alignment lines. This is used to provide a vertical rhythm for a design, to align adjacent content (text or graphics), and to align baselines on facing pages in printed material.</p>
   <p>The grid lines can be spaced at line-height intervals or a factor of line-height.</p>
   <p>Content can be aligned to the grid in various ways. Roman body text
typically sets the baseline on a grid line. Graphics might have their top,
bottom or both set on grid lines, or be centered between grid lines. Text
blocks (consider a multi-line heading with line-height at 1.4x grid
height) might have their last baseline or first baseline on a grid line,
or have the block’s combined height centered between grid lines. Centering
is much more important in ideographic type systems.</p>
   <p>If normal layout would result in a misalignment, content shifts down to
the next available grid line.</p>
   <p>Sometimes it’s necessary to have particular content opt out of aligning to
a grid.</p>
   <p>There can be one or more grids per document. Multiple grids can overlap
(body grid and side content grid) or run in series (a vertical stack of
pages). Grids can be nested (think of a document being represented as a
graphic inside another document). A particular piece of content only
aligns to a single grid.</p>
   <h2 class="no-num heading settled" id="of-leading-and-sinkage-the-language-of-print"><span class="content">Appendix B: Of Leading and Sinkage: The Language of Print</span><a class="self-link" href="#of-leading-and-sinkage-the-language-of-print"></a></h2>
   <p>Translating print designs to the open web platform can be tricky.</p>
   <ul>
    <li> vertical distances are usually measured baseline to baseline. 
    <li> print designers sometimes talk about a "text page" which includes the running head. 
    <li> The basic text area is often specified with a gutter margin and a text "measure". In <a data-link-type="biblio" href="#biblio-css3-page">[css3-page]</a> this area is described by left/right or inside/outside margins. 
   </ul>
   <dl>
    <dt> Leading 
    <dd> Line-height 
    <dt> Recto 
    <dd> Right-hand page of a spread 
    <dt> Verso 
    <dd> Left-hand page of a spread 
   </dl>
   <h2 class="no-num heading settled" id="the-classical-rules-of-hyphenation-and-pagination"><span class="content"> The Classical Rules of Hyphenation and Pagination </span><a class="self-link" href="#the-classical-rules-of-hyphenation-and-pagination"></a></h2>
   <ol>
    <li> At hyphenated line-ends, leave at least two characters behind, and take at least three forward. 
    <li> Avoid leaving the stub-end of a hyphenated word, or any word shorter than four letters, as the last line of a paragraph. 
    <li> Avoid more than three consecutive hyphenated lines. 
    <li> Hyphenate proper names only as a last resort unless they occur with the frequency of common nouns. 
    <li> Hyphenate according to the conventions of the language. 
    <li> Link short numerical and mathematical expressions with hard spaces. 
    <li> Avoid beginning more than two consecutive lines with the same word. 
    <li> Never begin a page with the last line of a multi-line paragraph. 
    <li> Balance facing pages by moving single lines. 
    <li> Avoid hyphenated breaks where the text is interrupted. 
    <li> Abandon any and all rules of hyphenation and pagination that fail to serve the needs of the text. 
   </ol>
   <h2 class="no-num heading settled" id="further-reading"><span class="content"> Further Reading </span><a class="self-link" href="#further-reading"></a></h2>
   <p>Bringhurst, Robert. <i>The Elements of Typographic Style</i></p>
   <p>Felici, Jim. <i>The Complete Manual of Typography</i></p>
   <p>Haralambous, Yannis. <i>Fonts &amp; Encodings: From Advanced Typography to Unicode and Everything in Between</i></p>
   <p>Haslam, Andrew. <i>Book Design</i></p>
   <p>Highsmith, Cyrus. <i>Inside Paragraphs</i></p>
   <p>Kane, John. <i>A Type Primer</i></p>
   <p>Knuth, Donald. <i>Digital Typography</i></p>
   <p>Lawson, Alexander. <i>Anatomy of a Typeface</i></p>
   <p>Mitchell; Wightman. <i>Book Typography</i></p>
   <p>Nickel, Kristina. <i>Ready to Print</i></p>
   <p>Steer, Vincent. <i>Printing Design and Layout</i> (1948)</p>
   <p>Tracy, Walter. <i>Letters of Credit: A View of Type Design</i></p>
   <p>Tschichold, Jan. <i>The Form of the Book: Essays on the Morality of Good Design</i></p>
   <h2 class="no-num heading settled" id="acknowledgments"><span class="content">Acknowledgments</span><a class="self-link" href="#acknowledgments"></a></h2>
   <p>Eric Aubourg, Luc Audrain, Bert Bos, Tom Byrer, James Clark, Brady Duga, Ivan Herman, Tony Graham, Bill Kasdorf, Jean Kaplansky, Sanders Kleinfeld, Liam Quin, Alan Stearns, Tzviya Siegman</p>
  </main>
  <div data-fill-with="conformance">
   <h2 class="no-ref no-num heading settled" id="conformance"><span class="content"> Conformance</span><a class="self-link" href="#conformance"></a></h2>
   <p> Conformance requirements are expressed with a combination of descriptive assertions and RFC 2119 terminology.
            The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL”
            in the normative parts of this document
            are to be interpreted as described in RFC 2119.
            However, for readability,
            these words do not appear in all uppercase letters in this specification. </p>
   <p> All of the text of this specification is normative
            except sections explicitly marked as non-normative, examples, and notes. <a data-link-type="biblio" href="#biblio-rfc2119">[RFC2119]</a> </p>
   <p> Examples in this specification are introduced with the words “for example”
            or are set apart from the normative text with <code>class="example"</code>, like this: </p>
   <div class="example" id="example-example"><a class="self-link" href="#example-example"></a> This is an example of an informative example. </div>
   <p> Informative notes begin with the word “Note”
            and are set apart from the normative text with <code>class="note"</code>, like this: </p>
   <p class="note" role="note"> Note, this is an informative note. </p>
  </div>
<script>
(function() {
  "use strict";
  var collapseSidebarText = '<span aria-hidden="true">←</span> '
                          + '<span>Collapse Sidebar</span>';
  var expandSidebarText   = '<span aria-hidden="true">→</span> '
                          + '<span>Pop Out Sidebar</span>';
  var tocJumpText         = '<span aria-hidden="true">↑</span> '
                          + '<span>Jump to Table of Contents</span>';

  var sidebarMedia = window.matchMedia('screen and (min-width: 78em)');
  var autoToggle   = function(e){ toggleSidebar(e.matches) };
  if(sidebarMedia.addListener) {
    sidebarMedia.addListener(autoToggle);
  }

  function toggleSidebar(on) {
    if (on == undefined) {
      on = !document.body.classList.contains('toc-sidebar');
    }

    /* Don’t scroll to compensate for the ToC if we’re above it already. */
    var headY = 0;
    var head = document.querySelector('.head');
    if (head) {
      // terrible approx of "top of ToC"
      headY += head.offsetTop + head.offsetHeight;
    }
    var skipScroll = window.scrollY < headY;

    var toggle = document.getElementById('toc-toggle');
    var tocNav = document.getElementById('toc');
    if (on) {
      var tocHeight = tocNav.offsetHeight;
      document.body.classList.add('toc-sidebar');
      document.body.classList.remove('toc-inline');
      toggle.innerHTML = collapseSidebarText;
      if (!skipScroll) {
        window.scrollBy(0, 0 - tocHeight);
      }
      tocNav.focus();
      sidebarMedia.addListener(autoToggle); // auto-collapse when out of room
    }
    else {
      document.body.classList.add('toc-inline');
      document.body.classList.remove('toc-sidebar');
      toggle.innerHTML = expandSidebarText;
      if (!skipScroll) {
        window.scrollBy(0, tocNav.offsetHeight);
      }
      if (toggle.matches(':hover')) {
        /* Unfocus button when not using keyboard navigation,
           because I don’t know where else to send the focus. */
        toggle.blur();
      }
    }
  }

  function createSidebarToggle() {
    /* Create the sidebar toggle in JS; it shouldn’t exist when JS is off. */
    var toggle = document.createElement('a');
      /* This should probably be a button, but appearance isn’t standards-track.*/
    toggle.id = 'toc-toggle';
    toggle.class = 'toc-toggle';
    toggle.href = '#toc';
    toggle.innerHTML = collapseSidebarText;

    sidebarMedia.addListener(autoToggle);
    var toggler = function(e) {
      e.preventDefault();
      sidebarMedia.removeListener(autoToggle); // persist explicit off states
      toggleSidebar();
      return false;
    }
    toggle.addEventListener('click', toggler, false);


    /* Get <nav id=toc-nav>, or make it if we don’t have one. */
    var tocNav = document.getElementById('toc-nav');
    if (!tocNav) {
      tocNav = document.createElement('p');
      tocNav.id = 'toc-nav';
      /* Prepend for better keyboard navigation */
      document.body.insertBefore(tocNav, document.body.firstChild);
    }
    /* While we’re at it, make sure we have a Jump to Toc link. */
    var tocJump = document.getElementById('toc-jump');
    if (!tocJump) {
      tocJump = document.createElement('a');
      tocJump.id = 'toc-jump';
      tocJump.href = '#toc';
      tocJump.innerHTML = tocJumpText;
      tocNav.appendChild(tocJump);
    }

    tocNav.appendChild(toggle);
  }

  var toc = document.getElementById('toc');
  if (toc) {
    createSidebarToggle();
    toggleSidebar(sidebarMedia.matches);

    /* If the sidebar has been manually opened and is currently overlaying the text
       (window too small for the MQ to add the margin to body),
       then auto-close the sidebar once you click on something in there. */
    toc.addEventListener('click', function(e) {
      if(e.target.tagName.toLowerCase() == "a" && document.body.classList.contains('toc-sidebar') && !sidebarMedia.matches) {
        toggleSidebar(false);
      }
    }, false);
  }
  else {
    console.warn("Can’t find Table of Contents. Please use <nav id='toc'> around the ToC.");
  }

  /* Wrap tables in case they overflow */
  var tables = document.querySelectorAll(':not(.overlarge) > table.data, :not(.overlarge) > table.index');
  var numTables = tables.length;
  for (var i = 0; i < numTables; i++) {
    var table = tables[i];
    var wrapper = document.createElement('div');
    wrapper.className = 'overlarge';
    table.parentNode.insertBefore(wrapper, table);
    wrapper.appendChild(table);
  }

})();
</script>
  <h2 class="no-num no-ref heading settled" id="index"><span class="content">Index</span><a class="self-link" href="#index"></a></h2>
  <h3 class="no-num no-ref heading settled" id="index-defined-here"><span class="content">Terms defined by this specification</span><a class="self-link" href="#index-defined-here"></a></h3>
  <ul class="index">
   <li><a href="#bleed">bleed</a><span>, in §3.3</span>
   <li><a href="#drop-cap">drop cap</a><span>, in §8.1</span>
   <li><a href="#foldouts">Foldouts</a><span>, in §3.2</span>
   <li><a href="#orphan">orphan</a><span>, in §5.2</span>
   <li><a href="#raised-cap">raised cap</a><span>, in §8.2</span>
   <li><a href="#sunken-cap">sunken cap</a><span>, in §8.2</span>
   <li><a href="#text-replace">text-replace</a><span>, in §20.2</span>
   <li><a href="#turned-pages">Turned pages</a><span>, in §3.2</span>
   <li><a href="#widow">widow</a><span>, in §5.1</span>
  </ul>
  <h2 class="no-num no-ref heading settled" id="references"><span class="content">References</span><a class="self-link" href="#references"></a></h2>
  <h3 class="no-num no-ref heading settled" id="normative"><span class="content">Normative References</span><a class="self-link" href="#normative"></a></h3>
  <dl>
   <dt id="biblio-rfc2119">[RFC2119]
   <dd>S. Bradner. <a href="https://tools.ietf.org/html/rfc2119">Key words for use in RFCs to Indicate Requirement Levels</a>. March 1997. Best Current Practice. URL: <a href="https://tools.ietf.org/html/rfc2119">https://tools.ietf.org/html/rfc2119</a>
  </dl>
  <h3 class="no-num no-ref heading settled" id="informative"><span class="content">Informative References</span><a class="self-link" href="#informative"></a></h3>
  <dl>
   <dt id="biblio-css-flexbox-1">[CSS-FLEXBOX-1]
   <dd>Tab Atkins Jr.; et al. <a href="https://www.w3.org/TR/css-flexbox-1/">CSS Flexible Box Layout Module Level 1</a>. 19 November 2018. CR. URL: <a href="https://www.w3.org/TR/css-flexbox-1/">https://www.w3.org/TR/css-flexbox-1/</a>
   <dt id="biblio-css3-break">[CSS3-BREAK]
   <dd>Rossen Atanassov; Elika Etemad. <a href="https://www.w3.org/TR/css-break-3/">CSS Fragmentation Module Level 3</a>. 4 December 2018. CR. URL: <a href="https://www.w3.org/TR/css-break-3/">https://www.w3.org/TR/css-break-3/</a>
   <dt id="biblio-css3-content">[CSS3-CONTENT]
   <dd>Elika Etemad; Dave Cramer. <a href="https://www.w3.org/TR/css-content-3/">CSS Generated Content Module Level 3</a>. 2 June 2016. WD. URL: <a href="https://www.w3.org/TR/css-content-3/">https://www.w3.org/TR/css-content-3/</a>
   <dt id="biblio-css3-gcpm">[CSS3-GCPM]
   <dd>Dave Cramer. <a href="https://www.w3.org/TR/css-gcpm-3/">CSS Generated Content for Paged Media Module</a>. 13 May 2014. WD. URL: <a href="https://www.w3.org/TR/css-gcpm-3/">https://www.w3.org/TR/css-gcpm-3/</a>
   <dt id="biblio-css3-page">[CSS3-PAGE]
   <dd>Elika Etemad; Simon Sapin. <a href="https://www.w3.org/TR/css-page-3/">CSS Paged Media Module Level 3</a>. 18 October 2018. WD. URL: <a href="https://www.w3.org/TR/css-page-3/">https://www.w3.org/TR/css-page-3/</a>
   <dt id="biblio-css3text">[CSS3TEXT]
   <dd>Elika Etemad; Koji Ishii; Florian Rivoal. <a href="https://www.w3.org/TR/css-text-3/">CSS Text Module Level 3</a>. 12 December 2018. WD. URL: <a href="https://www.w3.org/TR/css-text-3/">https://www.w3.org/TR/css-text-3/</a>
   <dt id="biblio-jlreq">[JLREQ]
   <dd>Yasuhiro Anan; et al. <a href="https://www.w3.org/TR/jlreq/">Requirements for Japanese Text Layout</a>. 3 April 2012. NOTE. URL: <a href="https://www.w3.org/TR/jlreq/">https://www.w3.org/TR/jlreq/</a>
  </dl>
  <h2 class="no-num no-ref heading settled" id="issues-index"><span class="content">Issues Index</span><a class="self-link" href="#issues-index"></a></h2>
  <div style="counter-reset:issue">
   <div class="issue">PrinceXML has the <code>prince-hyphenate-before</code> property, but this is not in any current CSS draft.<a href="#issue-454b657a"> ↵ </a></div>
   <div class="issue">PrinceXML has the <code>prince-hyphenate-after</code> property, but this is not in any current CSS draft.<a href="#issue-aa94c785"> ↵ </a></div>
   <div class="issue">PrinceXML has the <code>prince-hyphenate-lines</code> property, but this is not in any current CSS draft.<a href="#issue-03274385"> ↵ </a></div>
   <div class="issue"> PrinceXML uses a prefixed property <code>prince-hyphenate-patterns: url('en_US.dic');</code> to load a hyphenation dictionary. No current CSS specification includes support for this idea.<a href="#issue-3dc3c2f3"> ↵ </a></div>
   <div class="issue"> <a data-link-type="biblio" href="#biblio-css3-break">[css3-break]</a> does not consider a fractional value for the <span class="css">widow</span> or <span class="css">orphan</span> properties.<a href="#issue-e72aff16"> ↵ </a></div>
   <div class="issue"> CSS does not currently address the second meaning of orphan.<a href="#issue-251abe22"> ↵ </a></div>
   <div class="issue"> This is an example where the page position of an element determines its content as well as design. A <code>::page-top</code> or <code>::page-bottom</code> pseudo-element might prove useful.<a href="#issue-e58fcd00"> ↵ </a></div>
   <div class="issue"> Input on techniques for coping with initial punctuation on drop caps would be appreciated.<a href="#issue-e5c45af9"> ↵ </a></div>
   <div class="issue"> Are these values enough to handle indexes, dictionaries, and other use cases?<a href="#issue-43c52f4c"> ↵ </a></div>
   <div class="issue"> What should we call this?<a href="#issue-b68fc9b2"> ↵ </a></div>
   <div class="issue"> <a data-link-type="biblio" href="#biblio-css3-content">[css3-content]</a> does not have a mechanism to customize the content of a cross-reference based on the type of element being referred to. See <a href="https://lists.w3.org/Archives/Public/public-digipub/2015Aug/0079.html">https://lists.w3.org/Archives/Public/public-digipub/2015Aug/0079.html</a> and subsequent discussion.<a href="#issue-e5dc6ee0"> ↵ </a></div>
  </div>